This is the mail archive of the cygwin-patches@cygwin.com mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Corinna, Here is setgroups. I still need to declare it in an .h file. Should it be in src/newlib/libc/include/sys/unistd.h ? Note the update of cygwin.din Pierre 2002-07-25 Pierre Humblet <Pierre.Humblet@ieee.org> * cygheap.h (class cygheap_user): Add member gsids and methods gsids_set, gsids_alloc, gsids_free, gsids_update and issetgroups. * cygheap.cc (cygheap_user::gsids_set): New. (cygheap_user::gsids_alloc): New. (cygheap_user::gsids_free): New. (cygheap_user::gsids_update): New. * security.h (class cygsidarray): Create. (class cygsidlist): Add member maxcount and use it in method add. Change argument of methods add and contains to PSID. Add operator+= (const PSID psid). Update declarations of verify_token and create_token. * security.cc * (get_token_group_sidlist): Create from get_group_sidlist. (get_initgroups_sidlist): Create from get_group_sidlist. (get_group_sidlist): Suppress. (get_setgroups_sidlist): Create. (verify_token): Modify arguments. Add setgroups case. (create_token): Modify arguments. Call get_initgroups_sidlist and get_setgroups_sidlist as needed. Set SE_GROUP_LOGON_ID from auth_pos outside of the loop. Rename the four group sid lists uniformly. * syscalls.cc (seteuid32): Modify to use cygheap->user.gsids. (setegid32): Update cygheap->user.gsids. * grp.cc (setgroups): New. (setgroups32): New. * uinfo.cc (internal_getlogin): Initialize and update user.gsids. * cygwin.din: Add setgroups and setgroups32.
Attachment:
setgroups.diff
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |