page conflicted with the real one that comes from grp.h on Solaris 2.6.
Adjusted it so the local prototype is correct on both (hopefully all)
platforms. Also added an include of <unistd.h>, which is where initgroups()
lives on HP-UX 10.20.
#include <signal.h>
#include <sys/ioctl.h>
#include <fcntl.h>
-#include <grp.h>
+
+#include <grp.h> /* initgroups() is here on Solaris 2.6 */
+#include <unistd.h> /* initgroups() is here on HP-UX 10.20 */
+
+/* On AIX 4.1, initgroups() is defined and even documented (giving the parameter
+ types as "char*" and "int"), but doesn't have a prototype in any of the
+ system header files. On other OSes, this should be a duplicate prototype
+ that won't cause any errors or warnings. */
+extern int initgroups(const char*, gid_t);
#ifdef HAVE_DB1_NDBM_H
#include <db1/ndbm.h>
#include <utmp.h>
-extern int initgroups(char*, int); /* def'd in libc.a but no .h on AIX 4.1 */
-
#ifndef UTMP_FILE
# ifdef _PATH_UTMP
# define UTMP_FILE _PATH_UTMP