summaryrefslogtreecommitdiffstats
path: root/src/providers/ipa/ipa_init.c
diff options
context:
space:
mode:
authorSumit Bose <sbose@redhat.com>2010-03-31 15:30:28 +0200
committerSumit Bose <sbose@redhat.com>2010-03-31 15:30:28 +0200
commit1ed85377ec6de713f738ba498235fb352642841c (patch)
tree3342ce65e5b3e8d8c0b953094e2919397c56e9c4 /src/providers/ipa/ipa_init.c
parenta1e8a51f3fe9595006b20e873dfdd4b6c58b79aa (diff)
First try to read mirgation flagmy_head
Diffstat (limited to 'src/providers/ipa/ipa_init.c')
-rw-r--r--src/providers/ipa/ipa_init.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/providers/ipa/ipa_init.c b/src/providers/ipa/ipa_init.c
index 0ddd5fcca..992286539 100644
--- a/src/providers/ipa/ipa_init.c
+++ b/src/providers/ipa/ipa_init.c
@@ -48,7 +48,7 @@ struct bet_ops ipa_auth_ops = {
};
struct bet_ops ipa_chpass_ops = {
- .handler = krb5_pam_handler,
+ .handler = ipa_auth,
.finalize = NULL,
};
@@ -190,9 +190,17 @@ int sssm_ipa_auth_init(struct be_ctx *bectx,
}
ipa_options->auth_ctx = ipa_auth_ctx;
+ ret = dp_copy_options(ipa_auth_ctx, ipa_options->basic,
+ IPA_OPTS_BASIC, &ipa_auth_ctx->ipa_options);
+ if (ret != EOK) {
+ DEBUG(1, ("dp_copy_options failed.\n"));
+ goto done;
+ }
+
krb5_auth_ctx = talloc_zero(ipa_auth_ctx, struct krb5_ctx);
if (!krb5_auth_ctx) {
- return ENOMEM;
+ ret = ENOMEM;
+ goto done;
}
krb5_auth_ctx->service = ipa_options->service->krb5_service;
ipa_options->auth_ctx->krb5_auth_ctx = krb5_auth_ctx;
@@ -205,7 +213,8 @@ int sssm_ipa_auth_init(struct be_ctx *bectx,
sdap_auth_ctx = talloc_zero(ipa_auth_ctx, struct sdap_auth_ctx);
if (!sdap_auth_ctx) {
- return ENOMEM;
+ ret = ENOMEM;
+ goto done;
}
sdap_auth_ctx->be = bectx;
sdap_auth_ctx->service = ipa_options->service->sdap;