tags 765499 +patch quit Hi,
Here's a patch to document the 32-bit nature of UIDs, in line with Ben's suggestion (which seems sound to me). I've added a note to the effect that useradd won't use the higher-numbered UIDs, which seems sensible as a) that requires no changes to useradd b) there are some systems you might want to NIS with which still have 16 bits only. HTH, Matthew
--- policy.sgml.orig 2015-01-22 16:08:58.764239260 +0000 +++ policy.sgml 2015-01-22 16:39:05.244580859 +0000 @@ -7352,6 +7352,26 @@ <tag>65535:</tag> <item> <p> + This value <em>must not</em> be used, because it was + the error return sentinel value when <tt>uid_t</tt> + was 16 bits. + </p> + </item> + + <tag>65536-4294967294:</tag> + <item> + <p> + Dynamically allocated user accounts. By + default <prgn>adduser</prgn> will not allocate UIDs + and GIDs in this range, to ease compatibility with + legacy systems where <tt>uid_t</tt> is still 16 + bits. + </p> + </item> + + <tag>4294967295:</tag> + <item> + <p> <tt>(uid_t)(-1) == (gid_t)(-1)</tt> <em>must not</em> be used, because it is the error return sentinel value.