From ac67ced558092b8f15b5eea2b7ce27b663709466 Mon Sep 17 00:00:00 2001 From: "Todd C. Miller" Date: Thu, 9 Dec 1999 04:04:47 +0000 Subject: [PATCH] Add check for initgroups() since old SYSV lacks this. --- config.h.in | 3 +++ configure | 2 +- configure.in | 2 +- sudo.c | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/config.h.in b/config.h.in index 7b5df580f..cea16fe19 100644 --- a/config.h.in +++ b/config.h.in @@ -188,6 +188,9 @@ /* Define if you have innetgr(3). */ #undef HAVE_INNETGR +/* Define if you have initgroups(3). */ +#undef HAVE_INITGROUPS + /* Define if you have getdomainname(2). */ #undef HAVE_GETDOMAINNAME diff --git a/configure b/configure index 5f60af6be..e32405834 100755 --- a/configure +++ b/configure @@ -5403,7 +5403,7 @@ EOF ;; esac -for ac_func in strchr strrchr memchr memcpy memset sysconf sigaction tzset seteuid ftruncate strftime setrlimit +for ac_func in strchr strrchr memchr memcpy memset sysconf sigaction tzset seteuid ftruncate strftime setrlimit initgroups do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 echo "configure:5410: checking for $ac_func" >&5 diff --git a/configure.in b/configure.in index b3bafa75f..93b1acdb9 100644 --- a/configure.in +++ b/configure.in @@ -1333,7 +1333,7 @@ esac dnl dnl Function checks dnl -AC_CHECK_FUNCS(strchr strrchr memchr memcpy memset sysconf sigaction tzset seteuid ftruncate strftime setrlimit) +AC_CHECK_FUNCS(strchr strrchr memchr memcpy memset sysconf sigaction tzset seteuid ftruncate strftime setrlimit initgroups) if test -n "$SECUREWARE"; then AC_CHECK_FUNCS(bigcrypt) AC_CHECK_FUNCS(set_auth_parameters) diff --git a/sudo.c b/sudo.c index 38e0bc30b..4ecc05aa7 100644 --- a/sudo.c +++ b/sudo.c @@ -929,7 +929,7 @@ set_perms(perm, sudo_mode) strerror(errno)); exit(1); } - +#ifdef HAVE_INITGROUPS /* * Initialize group vector only if are * going to run as a non-root user. @@ -942,7 +942,7 @@ set_perms(perm, sudo_mode) Argv[0], strerror(errno)); exit(1); } - +#endif /* HAVE_INITGROUPS */ if (setuid(pw->pw_uid)) { (void) fprintf(stderr, "%s: cannot set uid to %ld: %s\n", -- 2.40.0