aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2024-10-04 13:14:19 +0000
committerLaurent Bercot <ska@appnovation.com>2024-10-04 13:14:19 +0000
commit058cb099026db5839fb62da38570a9066fc3e280 (patch)
tree119e6b9dcf1abe254a029f8df1d00fb8b43781e6
parent4b655e6909c5ca1b7a6a153689aa28c77bf9894c (diff)
downloadnsss-058cb099026db5839fb62da38570a9066fc3e280.tar.gz
bsdsnowflake setgroups()
Signed-off-by: Laurent Bercot <ska@appnovation.com>
-rw-r--r--src/include/nsss/grp.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/include/nsss/grp.h b/src/include/nsss/grp.h
index 001a98e..134b200 100644
--- a/src/include/nsss/grp.h
+++ b/src/include/nsss/grp.h
@@ -70,9 +70,19 @@ extern "C" {
*/
#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_DEFAULT_SOURCE)
+
#include <sys/types.h>
-extern int setgroups (size_t, gid_t const *) ;
+
extern int initgroups (char const *, gid_t) ;
+
+ /* guess who has a different definition of setgroups() from everyone else */
+
+#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__bsdi__) || defined(__DragonFly__)
+extern int setgroups (int, gid_t const *) ;
+#else
+extern int setgroups (size_t, gid_t const *) ;
+#endif
+
#endif
#ifdef _GNU_SOURCE