diff options
author | Günther Deschner <gd@samba.org> | 2006-06-22 20:07:08 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 11:18:55 -0500 |
commit | 4e7e7318492ed417899f19db2a133509b17f825a (patch) | |
tree | b979de87a9d029abe4cb8e2fbbba27e5b1c36c06 | |
parent | 600b0ae2e97967ebc19639312f03561e4004a7ee (diff) | |
download | samba-4e7e7318492ed417899f19db2a133509b17f825a.tar.gz samba-4e7e7318492ed417899f19db2a133509b17f825a.tar.bz2 samba-4e7e7318492ed417899f19db2a133509b17f825a.zip |
r16473: There is no point in calling set_dc_type_and_flags() before each
pam_auth login (when using kerberos).
Guenther
(This used to be commit 520777f7946e55b1437df138e529fdc053362d16)
-rw-r--r-- | source3/nsswitch/winbindd_pam.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/source3/nsswitch/winbindd_pam.c b/source3/nsswitch/winbindd_pam.c index 3ae7692c12..504c245c75 100644 --- a/source3/nsswitch/winbindd_pam.c +++ b/source3/nsswitch/winbindd_pam.c @@ -897,13 +897,20 @@ NTSTATUS winbindd_dual_pam_auth_kerberos(struct winbindd_domain *domain, } } - set_dc_type_and_flags(contact_domain); + if (contact_domain->initialized && + contact_domain->active_directory) { + goto try_login; + } + + if (!contact_domain->initialized) { + set_dc_type_and_flags(contact_domain); + } if (!contact_domain->active_directory) { DEBUG(3,("krb5 auth requested but domain is not Active Directory\n")); return NT_STATUS_INVALID_LOGON_TYPE; } - +try_login: result = winbindd_raw_kerberos_login(contact_domain, state, info3); done: return result; |