summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
authorilsimo <ilsimo>2006-07-01 14:25:12 +0000
committerilsimo <ilsimo>2006-07-01 14:25:12 +0000
commit5a6f8dfea5780c20f464f81f481eaa12b1945feb (patch)
treea2a39bddf6cc2269412196b392f4ef3227bee46a /common
parent34277e8e0164fccabef61fa4418f0aa4606bdadb (diff)
downloadxrdp-proprietary-5a6f8dfea5780c20f464f81f481eaa12b1945feb.tar.gz
xrdp-proprietary-5a6f8dfea5780c20f464f81f481eaa12b1945feb.zip
adding initgroups() to support multiple user groups
Diffstat (limited to 'common')
-rw-r--r--common/os_calls.c11
-rw-r--r--common/os_calls.h2
2 files changed, 13 insertions, 0 deletions
diff --git a/common/os_calls.c b/common/os_calls.c
index 48488539..6dc41e95 100644
--- a/common/os_calls.c
+++ b/common/os_calls.c
@@ -953,6 +953,17 @@ g_setgid(int pid)
/*****************************************************************************/
int
+g_initgroups(const char* user, int gid)
+{
+#if defined(_WIN32)
+ return 0;
+#else
+ return initgroups(user ,gid);
+#endif
+}
+
+/*****************************************************************************/
+int
g_setuid(int pid)
{
#if defined(_WIN32)
diff --git a/common/os_calls.h b/common/os_calls.h
index 68b70117..b28dc4ea 100644
--- a/common/os_calls.h
+++ b/common/os_calls.h
@@ -157,6 +157,8 @@ g_fork(void);
int
g_setgid(int pid);
int
+g_initgroups(const char* user, int gid);
+int
g_setuid(int pid);
int
g_waitchild(void);