diff options
Diffstat (limited to 'server/tools/sss_useradd.c')
-rw-r--r-- | server/tools/sss_useradd.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/server/tools/sss_useradd.c b/server/tools/sss_useradd.c index ba89276fa..d3b930d1a 100644 --- a/server/tools/sss_useradd.c +++ b/server/tools/sss_useradd.c @@ -233,6 +233,7 @@ int main(int argc, const char **argv) POPT_TABLEEND }; poptContext pc = NULL; + struct sss_domain_info *dom; struct user_add_ctx *user_ctx = NULL; struct tools_ctx *ctx = NULL; char *groups; @@ -332,12 +333,15 @@ int main(int argc, const char **argv) /* arguments processed, go on to actual work */ - user_ctx->domain = btreemap_get_value(ctx->domains, "LOCAL"); - if (user_ctx->domain == NULL) { - DEBUG(0, ("Could not set default values\n")); + for (dom = ctx->domains; dom; dom = dom->next) { + if (strcasecmp(dom->name, "LOCAL") == 0) break; + } + if (dom == NULL) { + DEBUG(0, ("Could not get domain info\n")); ret = EXIT_FAILURE; goto fini; } + user_ctx->domain = dom; /* useradd */ ret = sysdb_transaction(ctx, ctx->sysdb, add_user, user_ctx); |