aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/daemon.c39
1 files changed, 20 insertions, 19 deletions
diff --git a/src/daemon.c b/src/daemon.c
index 3071175f5..d920ff6c5 100644
--- a/src/daemon.c
+++ b/src/daemon.c
@@ -100,28 +100,29 @@ void
daemonize_set_user(void)
{
#ifndef WIN32
- if (user_name != NULL) {
- /* get uid */
- if (setgid(user_gid) == -1) {
- g_error("cannot setgid for user \"%s\": %s",
- user_name, g_strerror(errno));
- }
+ if (user_name == NULL)
+ return;
+
+ /* get uid */
+ if (setgid(user_gid) == -1) {
+ g_error("cannot setgid for user \"%s\": %s",
+ user_name, g_strerror(errno));
+ }
#ifdef _BSD_SOURCE
- /* init suplementary groups
- * (must be done before we change our uid)
- */
- if (initgroups(user_name, user_gid) == -1) {
- g_warning("cannot init supplementary groups "
- "of user \"%s\": %s",
- user_name, g_strerror(errno));
- }
+ /* init suplementary groups
+ * (must be done before we change our uid)
+ */
+ if (initgroups(user_name, user_gid) == -1) {
+ g_warning("cannot init supplementary groups "
+ "of user \"%s\": %s",
+ user_name, g_strerror(errno));
+ }
#endif
- /* set uid */
- if (setuid(user_uid) == -1) {
- g_error("cannot change to uid of user \"%s\": %s",
- user_name, g_strerror(errno));
- }
+ /* set uid */
+ if (setuid(user_uid) == -1) {
+ g_error("cannot change to uid of user \"%s\": %s",
+ user_name, g_strerror(errno));
}
#endif
}