From owner-freebsd-bugs@freebsd.org Fri Dec 4 15:18:45 2015 Return-Path: Delivered-To: freebsd-bugs@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 89979A40F30 for ; Fri, 4 Dec 2015 15:18:45 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5AA711621 for ; Fri, 4 Dec 2015 15:18:45 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from bugs.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id tB4FIjcF072255 for ; Fri, 4 Dec 2015 15:18:45 GMT (envelope-from bugzilla-noreply@freebsd.org) From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 205019] pw adduser mishandles internal error if the gid corresponding to the new uid is already in use Date: Fri, 04 Dec 2015 15:18:45 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: bin X-Bugzilla-Version: 10.2-RELEASE X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Some People X-Bugzilla-Who: ike@michaeleichorn.com X-Bugzilla-Status: New X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: freebsd-bugs@FreeBSD.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version rep_platform op_sys bug_status bug_severity priority component assigned_to reporter Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Dec 2015 15:18:45 -0000 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: freebsd-bugs@FreeBSD.org Reporter: ike@michaeleichorn.com 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 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.