Subject: negative user-ids and interoperability.
To: None <tech-userlevel@netbsd.org>
From: Simon Burge <simonb@netbsd.org>
List: tech-userlevel
Date: 04/26/1999 14:40:30
Folks,

Here where I work all the user-ids are served by an Ultrix box using
Hesiod - when the nsswitch stuff went in, I started jumping for joy!
Recently, it came to light that getpwent() didn't work - I hadn't
noticed this and things were on the most part working fine.

However, when looking at why getpwent() wasn't working, it came to light
that negative uids and gids are invalid on NetBSD (they're defined as
u_int32_t's).  Ultrix ships with the "nobody" account as -2:-2, and even
has a comment in <limits.h> saying that UID_MAX was dropped to 32000
because uid_t is a signed number.  The question is, how do we work with
this?  For now, I'm living with "nobody" in /etc/passwd, but this is a
pretty lame workaround.

Ideas anyone?  What do the standards have to say about uid ranges?

Simon.