From: Rich Felker Date: Tue, 15 Apr 2014 22:05:30 +0000 (-0400) Subject: in sysconf, use getrlimit function rather than raw syscall for rlimits X-Git-Tag: v1.1.0~6 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=6cf7d17f5349df9ee4a2d8c8c7c5d01c18385e08;p=oweals%2Fmusl.git in sysconf, use getrlimit function rather than raw syscall for rlimits the syscall is deprecated (replaced by prlimit64) and does not work correctly on x32. this change mildly increases size, but is likely needed anyway for newer archs that might omit deprecated syscalls. --- diff --git a/src/conf/sysconf.c b/src/conf/sysconf.c index e225c3dd..9ac52a10 100644 --- a/src/conf/sysconf.c +++ b/src/conf/sysconf.c @@ -228,9 +228,9 @@ long sysconf(int name) } else if (values[name] >= -1) { return values[name]; } else if (values[name] < -256) { - long lim[2]; - __syscall(SYS_getrlimit, values[name]&16383, lim); - return lim[0] < 0 ? LONG_MAX : lim[0]; + struct rlimit lim; + getrlimit(values[name]&16383, &lim); + return lim.rlim_cur > LONG_MAX ? LONG_MAX : lim.rlim_cur; } switch ((unsigned char)values[name]) {