summaryrefslogtreecommitdiffstats
path: root/server/tools/sss_groupadd.c
diff options
context:
space:
mode:
authorJakub Hrozek <jhrozek@redhat.com>2009-03-08 00:18:59 +0100
committerStephen Gallagher <sgallagh@redhat.com>2009-03-08 10:15:04 -0400
commit434c6d075f41f01a875756a02dd01fc802148ada (patch)
tree9fcdaf5d1f99b19bb2c204319eba1bccbac432a2 /server/tools/sss_groupadd.c
parent4c4bfc1a9590b3da9c901194f84dcb189481b25a (diff)
downloadsssd-434c6d075f41f01a875756a02dd01fc802148ada.tar.gz
sssd-434c6d075f41f01a875756a02dd01fc802148ada.tar.xz
sssd-434c6d075f41f01a875756a02dd01fc802148ada.zip
Fix initialization problems
Init tools ctx in groupadd before copying its value
Diffstat (limited to 'server/tools/sss_groupadd.c')
-rw-r--r--server/tools/sss_groupadd.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/server/tools/sss_groupadd.c b/server/tools/sss_groupadd.c
index 61f49c723..e36e220fe 100644
--- a/server/tools/sss_groupadd.c
+++ b/server/tools/sss_groupadd.c
@@ -84,19 +84,13 @@ int main(int argc, const char **argv)
POPT_TABLEEND
};
- poptContext pc;
+ poptContext pc = NULL;
struct tools_ctx *ctx = NULL;
struct group_add_ctx *group_ctx = NULL;
int ret = EXIT_SUCCESS;
debug_prg_name = argv[0];
- group_ctx = talloc_zero(NULL, struct group_add_ctx);
- if (group_ctx == NULL) {
- DEBUG(0, ("Could not allocate memory for group_ctx context\n"));
- return ENOMEM;
- }
- group_ctx->ctx = ctx;
/* arguments processed, go on to actual work */
ret = setup_db(&ctx);
@@ -106,6 +100,13 @@ int main(int argc, const char **argv)
goto fini;
}
+ group_ctx = talloc_zero(NULL, struct group_add_ctx);
+ if (group_ctx == NULL) {
+ DEBUG(0, ("Could not allocate memory for group_ctx context\n"));
+ return ENOMEM;
+ }
+ group_ctx->ctx = ctx;
+
/* parse params */
pc = poptGetContext(NULL, argc, argv, long_options, 0);
poptSetOtherOptionHelp(pc, "GROUPNAME");