From 6cf7d17f5349df9ee4a2d8c8c7c5d01c18385e08 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Tue, 15 Apr 2014 18:05:30 -0400 Subject: 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. --- src/conf/sysconf.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/conf/sysconf.c') 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]) { -- cgit v1.2.1