269d3c7dce
removed .sudoi patch fixed typo: RELPRO -> RELRO added -devel subpackage for the sudo_plugin.h header file use default ldap configuration files again
45 lines
1.7 KiB
Diff
45 lines
1.7 KiB
Diff
diff -up sudo-1.8.1p2/configure.in.getgrouplist sudo-1.8.1p2/configure.in
|
|
--- sudo-1.8.1p2/configure.in.getgrouplist 2011-07-12 12:13:29.562597933 +0200
|
|
+++ sudo-1.8.1p2/configure.in 2011-07-12 12:15:27.116597851 +0200
|
|
@@ -2007,7 +2007,7 @@ dnl
|
|
AC_FUNC_GETGROUPS
|
|
AC_CHECK_FUNCS(strrchr sysconf tzset strftime initgroups getgroups fstat \
|
|
regcomp setlocale nl_langinfo getaddrinfo mbr_check_membership \
|
|
- setrlimit64 sysctl)
|
|
+ setrlimit64 sysctl getgrouplist)
|
|
AC_CHECK_FUNCS(getline, [], [
|
|
AC_LIBOBJ(getline)
|
|
AC_CHECK_FUNCS(fgetln)
|
|
diff -up sudo-1.8.1p2/plugins/sudoers/pwutil.c.getgrouplist sudo-1.8.1p2/plugins/sudoers/pwutil.c
|
|
--- sudo-1.8.1p2/plugins/sudoers/pwutil.c.getgrouplist 2011-07-12 12:13:17.346597942 +0200
|
|
+++ sudo-1.8.1p2/plugins/sudoers/pwutil.c 2011-07-12 12:19:02.171597700 +0200
|
|
@@ -711,6 +711,28 @@ user_in_group(struct passwd *pw, const c
|
|
}
|
|
#endif /* HAVE_MBR_CHECK_MEMBERSHIP */
|
|
|
|
+#ifdef HAVE_GETGROUPLIST
|
|
+ if (user_ngroups >= 0 &&
|
|
+ strcmp(pw->pw_name, list_pw ? list_pw->pw_name : user_name) == 0)
|
|
+ {
|
|
+ gid_t *grouplist, grouptmp;
|
|
+ int n_groups, i;
|
|
+ n_groups = 1;
|
|
+
|
|
+ if (getgrouplist(user_name, user_gid, &grouptmp, &n_groups) == -1) {
|
|
+ grouplist = (gid_t *) emalloc(sizeof(gid_t) * (n_groups + 1));
|
|
+ if (getgrouplist(user_name, user_gid, grouplist, &n_groups) > 0)
|
|
+ for (i = 0; i < n_groups; i++)
|
|
+ if (grouplist[i] == grp->gr_gid) {
|
|
+ free(grouplist);
|
|
+ retval = TRUE;
|
|
+ goto done;
|
|
+ }
|
|
+ free(grouplist);
|
|
+ }
|
|
+ }
|
|
+#endif /* HAVE_GETGROUPLIST */
|
|
+
|
|
done:
|
|
if (grp != NULL)
|
|
gr_delref(grp);
|