Date: Thu, 15 Jul 2010 12:26:15 -0500 From: Dan Nelson <dnelson@allantgroup.com> To: Jens Rehsack <rehsack@googlemail.com> Cc: freebsd-questions@freebsd.org Subject: Re: getpwent bug? Message-ID: <20100715172615.GC5485@dan.emsphone.com> In-Reply-To: <AANLkTin5RGYfu_Xt5HWxKFO8GMTOi3YWQ8dyr95ZDW-Y@mail.gmail.com> References: <AANLkTin5RGYfu_Xt5HWxKFO8GMTOi3YWQ8dyr95ZDW-Y@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
In the last episode (Jul 15), Jens Rehsack said: > Hi all, > > I detected an issue with getpwent on my FreeBSD test box: > > perl -MData::Dumper -e 'my @e = getpwent(); print Dumper(\@e); endpwent(); @e = getpwent(); print Dumper(\@e); endpwent(); @e = getpwent(); print Dumper(\@e); endpwent();' > $VAR1 = [ 'root', '', 0, 0, 0, '', 'Charlie &', '/root', '/bin/csh', 0 ]; > $VAR1 = [ 'toor', '*', 0, 0, 0, '', 'Bourne-again Superuser', '/root', '', 0 ]; > $VAR1 = [ 'daemon', '*', 1, 1, 0, '', 'Owner of many system processes', '/root', '/usr/sbin/nologin', 0 ]; > > I'm using FreeBSD waldorf.muppets.liwing.de 7.3-PRERELEASE FreeBSD 7.3-PRERELEASE #0: Fri Mar 12 11:31:18 UTC 2010 root@waldorf.muppets.liwing.de:/usr/obj/usr/src/sys/WALDORF amd64 The above output looks perfect, and should match the top three lines in your /etc/passwd files. > The correct output should be (taken from a NetBSD system): > perl -MData::Dumper -e 'my @e = getpwent(); print Dumper(\@e); endpwent(); @e = getpwent(); print Dumper(\@e); endpwent(); @e = getpwent(); print Dumper(\@e); endpwent();' > $VAR1 = [ 'root', '*', 0, 0, 0, '', 'Charlie &', '/root', '/bin/ksh', 0 ]; > $VAR1 = [ 'root', '*', 0, 0, 0, '', 'Charlie &', '/root', '/bin/ksh', 0 ]; > $VAR1 = [ 'root', '*', 0, 0, 0, '', 'Charlie &', '/root', '/bin/ksh', 0 ]; This output looks wrong, unless NetBSD has three identical root lines at the top of its passwd file. > Taking a look to > http://www.cpantesters.org/distro/D/DBD-Sys.html#DBD-Sys-0.01, this > issue is not limited to FreeBSD 7.3 - it occures on FreeBSD 7.2 and > 8.0, too. I see a bunch of failed FreeBSD test lines, but I don't see anything relating to getpwent or getreant in the test failure output. Just lines like "Parse errors: Bad plan. You planned 16 tests but ran 12" -- Dan Nelson dnelson@allantgroup.com
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100715172615.GC5485>