summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2018-05-09 19:34:19 -0400
committerRay Strode <rstrode@redhat.com>2018-05-09 19:36:17 -0400
commit25437b69da82bd1dccc220f8dff516006a99471a (patch)
tree0c2e58342b7bf4ce070d9749ed4f56f0c8c41bfd
parentc17b57e1ffc3d6086cb4bbe17ff40a091662d1be (diff)
daemon: fix leak in useradd codewip/fix-useradd
The admin group variable is getting leaked when there are extra admin groups. This commit fixes that.
-rw-r--r--src/daemon.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/daemon.c b/src/daemon.c
index 66406c6..1e63a32 100644
--- a/src/daemon.c
+++ b/src/daemon.c
@@ -1076,10 +1076,11 @@ daemon_create_user_authorized_cb (Daemon *daemon,
argv[2] = "-c";
argv[3] = cd->real_name;
if (cd->account_type == ACCOUNT_TYPE_ADMINISTRATOR) {
- admin_groups = g_strdup (ADMIN_GROUP);
if (EXTRA_ADMIN_GROUPS != NULL && EXTRA_ADMIN_GROUPS[0] != '\0')
- admin_groups = g_strconcat (admin_groups, ",",
+ admin_groups = g_strconcat (ADMIN_GROUP, ",",
EXTRA_ADMIN_GROUPS, NULL);
+ else
+ admin_groups = g_strdup (ADMIN_GROUP);
argv[4] = "-G";
argv[5] = admin_groups;