aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Daemon.cxx6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/Daemon.cxx b/src/Daemon.cxx
index d40c49d5d..557c47777 100644
--- a/src/Daemon.cxx
+++ b/src/Daemon.cxx
@@ -116,7 +116,11 @@ daemonize_set_user(void)
/* init supplementary groups
* (must be done before we change our uid)
*/
- if (!had_group && initgroups(user_name, user_gid) == -1) {
+ if (!had_group &&
+ /* no need to set the new user's supplementary groups if
+ we are already this user */
+ user_uid != getuid() &&
+ initgroups(user_name, user_gid) == -1) {
FormatFatalSystemError("Failed to set supplementary groups "
"of user \"%s\"",
user_name);