diff options
author | Sumit Bose <sbose@redhat.com> | 2012-10-16 18:00:03 +0200 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2012-11-05 00:14:05 +0100 |
commit | 09d59c60dc9fae1fdc70ea4f1a073591a4eff456 (patch) | |
tree | 3cd3fe9293764b5e44bd2215f3eb7c370b195772 /src/responder/pac/pacsrv_utils.c | |
parent | 127baf2d277fc26c59ddabe3743dff8ac229ca77 (diff) | |
download | sssd-09d59c60dc9fae1fdc70ea4f1a073591a4eff456.tar.gz sssd-09d59c60dc9fae1fdc70ea4f1a073591a4eff456.tar.xz sssd-09d59c60dc9fae1fdc70ea4f1a073591a4eff456.zip |
pac responder: use only lower case user name
Since winbind can only return lower-cased user name the pac responder
must do the same to avoid inconsistent behaviour.
Diffstat (limited to 'src/responder/pac/pacsrv_utils.c')
-rw-r--r-- | src/responder/pac/pacsrv_utils.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/responder/pac/pacsrv_utils.c b/src/responder/pac/pacsrv_utils.c index 48caae643..4b55ef3e5 100644 --- a/src/responder/pac/pacsrv_utils.c +++ b/src/responder/pac/pacsrv_utils.c @@ -510,10 +510,12 @@ errno_t get_pwd_from_pac(TALLOC_CTX *mem_ctx, base_info = &logon_info->info3.base; if (base_info->account_name.size != 0) { - pwd->pw_name = talloc_strdup(pwd, - base_info->account_name.string); + /* To be compatible with winbind based lookups we have to use lower + * case names only, effectively making the domain case-insenvitive. */ + pwd->pw_name = sss_tc_utf8_str_tolower(pwd, + base_info->account_name.string); if (pwd->pw_name == NULL) { - DEBUG(SSSDBG_OP_FAILURE, ("talloc_strdup failed.\n")); + DEBUG(SSSDBG_OP_FAILURE, ("sss_tc_utf8_str_tolower failed.\n")); ret = ENOMEM; goto done; } |