diff options
author | Günther Deschner <gd@samba.org> | 2006-03-17 14:18:05 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 11:15:35 -0500 |
commit | a22d8d987c2b6c373d5f7db6f1afa5e701ebfef2 (patch) | |
tree | 3f1f978b64cc94cd10a5fd0f2aeed37c373c971d /source3 | |
parent | 0342db7e87f4c98da4051e9fc7a8abf1e36218d0 (diff) | |
download | samba-a22d8d987c2b6c373d5f7db6f1afa5e701ebfef2.tar.gz samba-a22d8d987c2b6c373d5f7db6f1afa5e701ebfef2.tar.bz2 samba-a22d8d987c2b6c373d5f7db6f1afa5e701ebfef2.zip |
r14513: Fix winbindd_chauthtok: only fallback when the chgpasswd3 call is not
supported.
Is there a better way to check for the 0x1c010002 status code?
Guenther
(This used to be commit c7268dc9ac304e1b6dac80762087a57484906103)
Diffstat (limited to 'source3')
-rw-r--r-- | source3/nsswitch/winbindd_pam.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/source3/nsswitch/winbindd_pam.c b/source3/nsswitch/winbindd_pam.c index e2b4297564..8b400fc1f1 100644 --- a/source3/nsswitch/winbindd_pam.c +++ b/source3/nsswitch/winbindd_pam.c @@ -1655,8 +1655,11 @@ void winbindd_pam_chauthtok(struct winbindd_cli_state *state) reject.reject_reason; got_info = True; - - } else if (!NT_STATUS_IS_OK(result)) { + + /* only fallback when the chgpasswd3 call is not supported */ + } else if ((result.v == 0x1c010002) || + (NT_STATUS_EQUAL(result, NT_STATUS_NOT_SUPPORTED)) || + (NT_STATUS_EQUAL(result, NT_STATUS_NOT_IMPLEMENTED))) { DEBUG(10,("Password change with chgpasswd3 failed with: %s, retrying chgpasswd_user\n", nt_errstr(result))); |