https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=205019
Bug ID: 205019
Summary: pw adduser mishandles internal error if the gid
corresponding to the new uid is already in use
Product: Base System
Version: 10.2-RELEASE
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: bin
Assignee: [email protected]
Reporter: [email protected]
In the event that pw adduser is called without specifying uid or gid and the
gid numerically equal to the next uid is already in use, pw will assign the gid
4294967295. If pw adduser is called again and the situation hold for the next
uid/gid combination, pw prints 'pw: gid `4294967295' has already been
allocated' and exits returning 65.
I hypothesize that internally when pw attempts to create the new gid, something
returns -1 as an error instead of returning the next gid. The -1 not tested for
and at some point is used to create the group 4294967295. Subsequent uses fail
as the gid already exists and that error is properly handled.
Steps to reproduce (assuming the next two uid/gid pairs are free):
# pw addgroup test1
# pw adduser tester1
# pw addgroup test2
# pw adduser tester2
pw: gid `4294967295' has already been allocated
# echo $?
65
First reported on freebsd-questions by Anton Shterenlikht <[email protected]>
https://lists.freebsd.org/pipermail/freebsd-questions/2015-December/269327.html
Verified in 10.2-RELEASE-p7 by Reporter.
--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "[email protected]"