summaryrefslogtreecommitdiff
path: root/src/providers/krb5/krb5_auth.c
diff options
context:
space:
mode:
authorSumit Bose <sbose@redhat.com>2012-10-24 09:47:21 +0200
committerSumit Bose <sbose@redhat.com>2012-10-26 10:32:06 +0200
commit964628ab89229e9266adc5f4f8a26222734788b7 (patch)
treef174c868325b6d00722d2927fd402469fc03a002 /src/providers/krb5/krb5_auth.c
parent29c0fdd1838a4b9892146f7019d12811c1d0d59b (diff)
downloadsssd-964628ab89229e9266adc5f4f8a26222734788b7.tar.gz
sssd-964628ab89229e9266adc5f4f8a26222734788b7.tar.bz2
sssd-964628ab89229e9266adc5f4f8a26222734788b7.zip
Use find_or_guess_upn() where needed
Diffstat (limited to 'src/providers/krb5/krb5_auth.c')
-rw-r--r--src/providers/krb5/krb5_auth.c27
1 files changed, 13 insertions, 14 deletions
diff --git a/src/providers/krb5/krb5_auth.c b/src/providers/krb5/krb5_auth.c
index 98dc8d84..c1f9f14b 100644
--- a/src/providers/krb5/krb5_auth.c
+++ b/src/providers/krb5/krb5_auth.c
@@ -420,20 +420,19 @@ struct tevent_req *krb5_auth_send(TALLOC_CTX *mem_ctx,
break;
case 1:
- kr->upn = ldb_msg_find_attr_as_string(res->msgs[0], SYSDB_UPN, NULL);
- if (kr->upn == NULL) {
- ret = krb5_get_simple_upn(state, krb5_ctx, pd->user, &kr->upn);
- if (ret != EOK) {
- DEBUG(1, ("krb5_get_simple_upn failed.\n"));
- goto done;
- }
- } else {
- ret = compare_principal_realm(kr->upn, realm,
- &kr->upn_from_different_realm);
- if (ret != 0) {
- DEBUG(SSSDBG_OP_FAILURE, ("compare_principal_realm failed.\n"));
- goto done;
- }
+ ret = find_or_guess_upn(state, res->msgs[0], krb5_ctx,
+ be_ctx->domain->name, pd->user, pd->domain,
+ &kr->upn);
+ if (ret != EOK) {
+ DEBUG(SSSDBG_OP_FAILURE, ("find_or_guess_upn failed.\n"));
+ goto done;
+ }
+
+ ret = compare_principal_realm(kr->upn, realm,
+ &kr->upn_from_different_realm);
+ if (ret != 0) {
+ DEBUG(SSSDBG_OP_FAILURE, ("compare_principal_realm failed.\n"));
+ goto done;
}
kr->homedir = ldb_msg_find_attr_as_string(res->msgs[0], SYSDB_HOMEDIR,