Remove uses of ulimit(3)

The function is obsolete.  It is recommended to use getrlimit(2) instead
(see the manual page for ulimit(3) or the POSIX manual for it).  Since
getrlimit(2) is required by POSIX.1-2001, we can rely on it.

Cc: Christian Göttsche <cgzones@googlemail.com>
Signed-off-by: Alejandro Colomar <alx@kernel.org>
This commit is contained in:
Alejandro Colomar 2022-12-02 22:10:18 +01:00 committed by Serge Hallyn
parent 0527fa677b
commit cdaa04e460
2 changed files with 3 additions and 16 deletions

View File

@ -38,7 +38,7 @@ dnl Checks for libraries.
dnl Checks for header files. dnl Checks for header files.
AC_CHECK_HEADERS(crypt.h utmp.h \ AC_CHECK_HEADERS(crypt.h utmp.h \
termio.h sgtty.h sys/ioctl.h paths.h \ termio.h sgtty.h sys/ioctl.h paths.h \
ulimit.h sys/capability.h sys/random.h sys/resource.h \ sys/capability.h sys/random.h sys/resource.h \
gshadow.h lastlog.h rpc/key_prot.h netdb.h acl/libacl.h \ gshadow.h lastlog.h rpc/key_prot.h netdb.h acl/libacl.h \
attr/libattr.h attr/error_context.h) attr/libattr.h attr/error_context.h)

View File

@ -11,16 +11,7 @@
#ident "$Id$" #ident "$Id$"
#if HAVE_ULIMIT_H #if HAVE_SYS_RESOURCE_H
# include <ulimit.h>
# ifndef UL_SETFSIZE
# ifdef UL_SFILLIM
# define UL_SETFSIZE UL_SFILLIM
# else
# define UL_SETFSIZE 2
# endif
# endif
#elif HAVE_SYS_RESOURCE_H
# include <sys/time.h> /* for struct timeval on sunos4 */ # include <sys/time.h> /* for struct timeval on sunos4 */
/* XXX - is the above ok or should it be <time.h> on ultrix? */ /* XXX - is the above ok or should it be <time.h> on ultrix? */
# include <sys/resource.h> # include <sys/resource.h>
@ -30,11 +21,7 @@
int set_filesize_limit (int blocks) int set_filesize_limit (int blocks)
{ {
int ret = -1; int ret = -1;
#if HAVE_ULIMIT_H #if defined(RLIMIT_FSIZE)
if (ulimit (UL_SETFSIZE, blocks) != -1) {
ret = 0;
}
#elif defined(RLIMIT_FSIZE)
struct rlimit rlimit_fsize; struct rlimit rlimit_fsize;
rlimit_fsize.rlim_cur = 512L * blocks; rlimit_fsize.rlim_cur = 512L * blocks;