diff options
author | Simo Sorce <simo@redhat.com> | 2012-07-19 19:35:43 -0400 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2012-08-01 22:24:44 +0200 |
commit | 87ed72b47859e673b636c85f35b85f1546c7ed3d (patch) | |
tree | 7feadb7a4316ad4148924b5424132e793c1c7c5c /src/providers/ipa/ipa_init.c | |
parent | 204cfc89a076fd32bf34f2abb3f809304aaa88ab (diff) | |
download | sssd-87ed72b47859e673b636c85f35b85f1546c7ed3d.tar.gz sssd-87ed72b47859e673b636c85f35b85f1546c7ed3d.tar.bz2 sssd-87ed72b47859e673b636c85f35b85f1546c7ed3d.zip |
Expose an initializer function from subdomain
Instead of exporting internal structures, expose an initilizer function
like the autofs code and initialize everything inside the
ipa_subdomains.c file.
Diffstat (limited to 'src/providers/ipa/ipa_init.c')
-rw-r--r-- | src/providers/ipa/ipa_init.c | 28 |
1 files changed, 6 insertions, 22 deletions
diff --git a/src/providers/ipa/ipa_init.c b/src/providers/ipa/ipa_init.c index d3d865e0..a6c32be2 100644 --- a/src/providers/ipa/ipa_init.c +++ b/src/providers/ipa/ipa_init.c @@ -76,11 +76,6 @@ struct bet_ops ipa_hostid_ops = { }; #endif -struct bet_ops ipa_subdomains_ops = { - .handler = ipa_subdomains_handler, - .finalize = NULL -}; - int common_ipa_init(struct be_ctx *bectx) { const char *ipa_servers; @@ -486,30 +481,19 @@ int sssm_ipa_subdomains_init(struct be_ctx *bectx, void **pvt_data) { int ret; - struct ipa_subdomains_ctx *subdomains_ctx; struct ipa_id_ctx *id_ctx; - subdomains_ctx = talloc_zero(bectx, struct ipa_subdomains_ctx); - if (subdomains_ctx == NULL) { - DEBUG(SSSDBG_CRIT_FAILURE, ("talloc_zero failed.\n")); - return ENOMEM; - } - ret = sssm_ipa_id_init(bectx, ops, (void **) &id_ctx); if (ret != EOK) { DEBUG(SSSDBG_CRIT_FAILURE, ("sssm_ipa_id_init failed.\n")); - goto done; + return ret; } - subdomains_ctx->sdap_id_ctx = id_ctx->sdap_id_ctx; - subdomains_ctx->search_bases = id_ctx->ipa_options->subdomains_search_bases; - subdomains_ctx->master_search_bases = id_ctx->ipa_options->master_domain_search_bases; - subdomains_ctx->ranges_search_bases = id_ctx->ipa_options->ranges_search_bases; - *ops = &ipa_subdomains_ops; - *pvt_data = subdomains_ctx; -done: + ret = ipa_subdom_init(bectx, id_ctx, ops, pvt_data); if (ret != EOK) { - talloc_free(subdomains_ctx); + DEBUG(SSSDBG_CRIT_FAILURE, ("ipa_subdom_init failed.\n")); + return ret; } - return ret; + + return EOK; } |