summaryrefslogtreecommitdiffstats
path: root/src/providers/krb5/krb5_access.c
diff options
context:
space:
mode:
authorSumit Bose <sbose@redhat.com>2012-10-24 09:47:21 +0200
committerJakub Hrozek <jhrozek@redhat.com>2012-11-05 00:14:05 +0100
commit983fab6286fa68b8586d7f20850491dc5ec22188 (patch)
treec24fe8f66b4bda86f07b9cbcf7294484bba48df3 /src/providers/krb5/krb5_access.c
parentb598728537c67557f20d760e2e4127ec868a434b (diff)
downloadsssd-983fab6286fa68b8586d7f20850491dc5ec22188.tar.gz
sssd-983fab6286fa68b8586d7f20850491dc5ec22188.tar.xz
sssd-983fab6286fa68b8586d7f20850491dc5ec22188.zip
Use find_or_guess_upn() where needed
Diffstat (limited to 'src/providers/krb5/krb5_access.c')
-rw-r--r--src/providers/krb5/krb5_access.c16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/providers/krb5/krb5_access.c b/src/providers/krb5/krb5_access.c
index afa3a89df..25612807d 100644
--- a/src/providers/krb5/krb5_access.c
+++ b/src/providers/krb5/krb5_access.c
@@ -25,6 +25,7 @@
#include "util/util.h"
#include "providers/krb5/krb5_auth.h"
#include "providers/krb5/krb5_common.h"
+#include "providers/krb5/krb5_utils.h"
struct krb5_access_state {
struct tevent_context *ev;
@@ -101,15 +102,12 @@ struct tevent_req *krb5_access_send(TALLOC_CTX *mem_ctx,
goto done;
break;
case 1:
- state->kr->upn = ldb_msg_find_attr_as_string(res->msgs[0], SYSDB_UPN,
- NULL);
- if (state->kr->upn == NULL) {
- ret = krb5_get_simple_upn(state, krb5_ctx, pd->user,
- &state->kr->upn);
- if (ret != EOK) {
- DEBUG(1, ("krb5_get_simple_upn failed.\n"));
- goto done;
- }
+ ret = find_or_guess_upn(state, res->msgs[0], krb5_ctx,
+ be_ctx->domain->name, pd->user, pd->domain,
+ &state->kr->upn);
+ if (ret != EOK) {
+ DEBUG(SSSDBG_OP_FAILURE, ("find_or_guess_upn failed.\n"));
+ goto done;
}
state->kr->uid = ldb_msg_find_attr_as_uint64(res->msgs[0], SYSDB_UIDNUM,