Hewlett-Packard's implementation of supplementary groups is nonstandard (for
historical reasons). There are two group files,
/etc/logingroup; the system maps UIDs to numbers using the former, but
initgroups() reads the latter. Most system admins who know the ropes
(hard-link does not work for reasons too obtuse to go into here). initgroups() will complain if one of the
groups you're in, in
/etc/logingroup, has what it considers to be an invalid
ID, which means outside the range
60000 currently on HP-UX. This precludes -2 and 65534, the usual
If you encounter this problem, make sure the programs that are failing
to initgroups() are run as users, not in any groups with GIDs outside the
This is documented in the HP manual pages under setgroups(2) and passwd(4).
On HP-UX you must use gcc or the HP ANSI compiler. The free compiler
that comes with HP-UX is not ANSI compliant and cannot compile Samba.