From owner-freebsd-current@freebsd.org Fri Jul 27 14:43:55 2018 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A0DF2104D440 for ; Fri, 27 Jul 2018 14:43:55 +0000 (UTC) (envelope-from lwhsu@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [96.47.72.132]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5B38F77CDE; Fri, 27 Jul 2018 14:43:55 +0000 (UTC) (envelope-from lwhsu@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1129) id 52FB1EA63; Fri, 27 Jul 2018 14:43:55 +0000 (UTC) Date: Fri, 27 Jul 2018 14:43:55 +0000 From: Li-Wen Hsu To: Ian Lepore Cc: freebsd-current@FreeBSD.org Subject: Re: svn commit: r336751 - head/usr.sbin/pw Message-ID: <20180727144355.GA47251@freefall.freebsd.org> References: <201807262003.w6QK3B7E026934@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201807262003.w6QK3B7E026934@repo.freebsd.org> User-Agent: Mutt/1.9.5 (2018-04-13) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Jul 2018 14:43:55 -0000 On Thu, Jul 26, 2018 at 20:03:11 +0000, Ian Lepore wrote: > Author: ian > Date: Thu Jul 26 20:03:11 2018 > New Revision: 336751 > URL: https://svnweb.freebsd.org/changeset/base/336751 > > Log: > Re-apply r336625 which was reverted with r336638, now that the underlying > pw_scan(3) has been fixed in a way that doesn't perturb other callers of > it or the getpwnam(3) family. > > Make pw(8) showuser work the same with or without -R for non-root > users. Without -R, pw(8) uses getpwnam(3), which will open master.passwd > for the root user or passwd for non-root users. With -R pw(8) was > always opening /master.passwd, which would fail for a non-root user, > then falsely claim the userid you're trying to show doesn't exist. > > Now for a non-root user it opens /passwd, and populates the fields in > the returned struct passwd which aren't present in that file with well-known > canonical values, which duplicates the behavior of getpwnam(3). The net > effect is that the showuser output is identical whether using -R or not. > > Modified: > head/usr.sbin/pw/pw_vpw.c Hi Ian, It seems usr.sbin.pw.* tests are failing after this commit: https://ci.freebsd.org/job/FreeBSD-head-amd64-test/8367/testReport/ Can you help me check this is realted to the new pw code or there is anything we need to modify in the test VM setup or running environment. The related artifacts are available here: https://artifact.ci.freebsd.org/snapshot/head/r336751/amd64/amd64/ You can use disk-test.img.xz which is a VM with setup testing environment. The build script will start automatically but you can ctrl-c to interrupt anytime and run tests by hand: cd /usr/tests/usr.sbin/pw kyua test Thanks, Li-Wen -- Li-Wen Hsu https://lwhsu.org