diff options
author | Günther Deschner <gd@samba.org> | 2008-11-13 17:19:11 +0100 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2008-11-13 17:33:18 +0100 |
commit | 6a61580617b0bd2cf46d4857dd0e87b3e48288f6 (patch) | |
tree | bf82ecc54c2145fd5af6309819bc83c2ddee9d46 /source3 | |
parent | 85dec6917184a024f9b76ea6f6654227e6457af3 (diff) | |
download | samba-6a61580617b0bd2cf46d4857dd0e87b3e48288f6.tar.gz samba-6a61580617b0bd2cf46d4857dd0e87b3e48288f6.tar.bz2 samba-6a61580617b0bd2cf46d4857dd0e87b3e48288f6.zip |
s3-winbindd: workaround for samr_ChangePasswordUser3 to User2 fallback for w2k dcs.
Guenther
Diffstat (limited to 'source3')
-rw-r--r-- | source3/winbindd/winbindd_pam.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source3/winbindd/winbindd_pam.c b/source3/winbindd/winbindd_pam.c index 7de28b08a9..597d48aad0 100644 --- a/source3/winbindd/winbindd_pam.c +++ b/source3/winbindd/winbindd_pam.c @@ -2117,9 +2117,15 @@ enum winbindd_result winbindd_dual_pam_chauthtok(struct winbindd_domain *contact got_info = true; } + /* atm the pidl generated rpccli_samr_ChangePasswordUser3 function will + * return with NT_STATUS_BUFFER_TOO_SMALL for w2k dcs as w2k just + * returns with 4byte error code (NT_STATUS_NOT_SUPPORTED) which is too + * short to comply with the samr_ChangePasswordUser3 idl - gd */ + /* only fallback when the chgpasswd_user3 call is not supported */ if ((NT_STATUS_EQUAL(result, NT_STATUS(DCERPC_FAULT_OP_RNG_ERROR))) || (NT_STATUS_EQUAL(result, NT_STATUS_NOT_SUPPORTED)) || + (NT_STATUS_EQUAL(result, NT_STATUS_BUFFER_TOO_SMALL)) || (NT_STATUS_EQUAL(result, NT_STATUS_NOT_IMPLEMENTED))) { DEBUG(10,("Password change with chgpasswd_user3 failed with: %s, retrying chgpasswd_user2\n", |