1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-11 05:18:09 +03:00

r23470: Fix supplementary group list truncation for *BSD. We need to pass

the correct group list length and only truncate to NGROUPS_MAX if
it is too long.
(This used to be commit 07f562be7a)
This commit is contained in:
James Peach 2007-06-13 20:40:50 +00:00 committed by Gerald (Jerry) Carter
parent 8b2637631e
commit 2cbe284e59

View File

@ -1018,10 +1018,16 @@ static int sys_bsd_setgroups(gid_t primary_gid, int setlen, const gid_t *gidset)
setlen++;
}
if (setlen > max) {
DEBUG(10, ("forced to truncate group list from %d to %d\n",
setlen, max));
setlen = max;
}
#if defined(BROKEN_GETGROUPS)
ret = sys_broken_setgroups(max, new_gidset ? new_gidset : gidset);
ret = sys_broken_setgroups(setlen, new_gidset ? new_gidset : gidset);
#else
ret = setgroups(max, new_gidset ? new_gidset : gidset);
ret = setgroups(setlen, new_gidset ? new_gidset : gidset);
#endif
if (new_gidset) {