[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: passwd entry for uid -1



On Sun, Jun 03, 2001 at 03:40:24PM -0400, Roland McGrath wrote:
> > We have an entry in /etc/passwd for the login user, with uid 100. Maybe we
> > should change that to -1?
> 
> I've never understood what uid 100 was about exactly.  

The idea was to add the login user automatically in the Hurd postinst file,
but adduser did not support negative uids.  Now it does, but I forgot about
changing the postinst file.  Anyway, if we were to specify -1 as the uid
now, we still have the problem that putpwent in glibc has this code:

  if (fprintf (stream, "%s:%s:%lu:%lu:%s:%s:%s\n",
               p->pw_name, _S (p->pw_passwd),
               (unsigned long int) p->pw_uid, (unsigned long int) p->pw_gid,
               _S (p->pw_gecos), _S (p->pw_dir), _S (p->pw_shell)) < 0)

Note the (unsigned long int) p->pw_uid.  So the uid will come out as
ULONG_MAX or so in the passwd file.  Is this safe?

The other possibility is to include the login user in the passwd/group master
file in base-passwd.  This is Architecture: any, so that's okay (I think it
was architecture all before, and we ruled it out because of this).
This is the more correct fix anyway, as the value must never change.  I
will file a bug report about it.

We also need an entry for -1 in the group file, right?

Thanks,
Marcus

-- 
`Rhubarb is no Egyptian god.' Debian http://www.debian.org brinkmd@debian.org
Marcus Brinkmann              GNU    http://www.gnu.org    marcus@gnu.org
Marcus.Brinkmann@ruhr-uni-bochum.de
http://www.marcus-brinkmann.de



Reply to: