From 085d7a090793970c5a9cf2d0d621dbfcbf7718dc Mon Sep 17 00:00:00 2001 From: Hurnjoo Lee Date: Thu, 23 Apr 2015 13:28:06 +0900 Subject: [PATCH] Fix the bug that create abnormal user In case there was wrong group in DEFAULT_USR_GROUP, user home directory was not created. This patch will prevent abnormal termination of creating user by wrong default groups. Change-Id: I74176fbce066ec160d518b228a2f7bd019de4d52 Signed-off-by: Hurnjoo Lee --- src/daemon/core/gumd-daemon-user.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/daemon/core/gumd-daemon-user.c b/src/daemon/core/gumd-daemon-user.c index f0b0ea1..b22b912 100644 --- a/src/daemon/core/gumd-daemon-user.c +++ b/src/daemon/core/gumd-daemon-user.c @@ -1218,7 +1218,6 @@ _set_default_groups ( GUM_CONFIG_GENERAL_DEF_USR_GROUPS), ",", -1); if (def_groupsv) { - gint ind = 0; while (def_groupsv[ind]) { GumdDaemonGroup *agroup = gumd_daemon_group_new (self->priv->config); @@ -1228,7 +1227,9 @@ _set_default_groups ( added = gumd_daemon_group_add_member (agroup, self->priv->pw->pw_uid, FALSE, error); g_object_unref (agroup); - if (!added) break; + if (!added) { + WARN ("Failed to set group : %s", def_groupsv[ind]); + } } else { GUM_RETURN_WITH_ERROR (GUM_ERROR_USER_GROUP_ADD_FAILURE, "Unable to add default groups", error, FALSE); @@ -1740,8 +1741,9 @@ gumd_daemon_user_add ( _add_userinfo(self); - if (!_set_default_groups (self, error) || - !_create_home_dir (self, error)) { + _set_default_groups (self, error); + + if (!_create_home_dir (self, error)) { gum_lock_pwdf_unlock (); return FALSE; } -- 2.7.4