Jim DeLaHunt added the comment:

The Mac OS 10.10 man page for initgroups(3) says:

"Processes should not use the group ID numbers from getgroups(2) to determine a 
user's group membership.  The list obtained from getgroups() may only be a 
partial list of a user's group membership.  Membership checks should use the 
mbr_gid_to_uuid(3), mbr_uid_to_uuid(3), and mbr_check_membership(3) functions."
(http://www.manpagez.com/man/3/initgroups/ -- not official Apple page, but it 
matches what I see in my OS.)

When the man page says, "The list obtained from getgroups() may only be a 
partial list of a user's group membership.", and the list from `id -G` is 
presumably a complete list, should we understand that Apple is saying their 
getgroups(2) implementation isn't POSIX-compliant? If so, maybe we should skip 
test_getgroups on Mac OS X systems?

Or, should we consider rewriting os_getgroups_impl() to use a Mac-specific 
implementation on Mac OS X?

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue29562>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to