fix prototypes/signature for setgroups, etc.
authorRich Felker <dalias@aerifal.cx>
Wed, 13 Apr 2011 13:03:22 +0000 (09:03 -0400)
committerRich Felker <dalias@aerifal.cx>
Wed, 13 Apr 2011 13:03:22 +0000 (09:03 -0400)
include/grp.h
include/unistd.h
src/linux/setgroups.c

index d4a3526a50936239d00ad66cde5873c7ce3d4f9a..518518512c99149526f1c831cf3b95620ace4f1d 100644 (file)
@@ -28,6 +28,12 @@ struct group  *getgrent(void);
 void           endgrent(void);
 void           setgrent(void);
 
+#ifdef _GNU_SOURCE
+int getgrouplist(const char *, gid_t, gid_t *, int *);
+int setgroups(size_t, const gid_t *);
+int initgroups(const char *, gid_t);
+#endif
+
 #ifdef __cplusplus
 }
 #endif
index b8f783ed9122538606a41aed59c17db8876ffb7f..05180de06a86c4dc702f958f1fcd3a5ddafc9600 100644 (file)
@@ -154,7 +154,7 @@ int getpagesize(void);
 int sethostname(const char *, size_t);
 int usleep(unsigned);
 unsigned ualarm(unsigned, unsigned);
-int setgroups(int, const gid_t []);
+int setgroups(size_t, const gid_t []);
 int setresuid(uid_t, uid_t, uid_t);
 int setresgid(gid_t, gid_t, gid_t);
 #endif
index bdee58d5d9b060f53d6dfb66bbead4592d1b89d3..9758940af2c57eaa4a836d8e34cc34ea073bba3c 100644 (file)
@@ -1,7 +1,7 @@
 #include <unistd.h>
 #include "syscall.h"
 
-int setgroups(int count, const gid_t list[])
+int setgroups(size_t count, const gid_t list[])
 {
        return syscall(SYS_setgroups, count, list);
 }