diff options
author | Andrew Bartlett <abartlet@samba.org> | 2014-06-30 12:04:03 +1200 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2014-07-04 02:52:35 +0200 |
commit | 0b77cd969c54e4efa6faff507834c183958ec23c (patch) | |
tree | 7615b93b7e97793cdb6533f5ea311de40e989285 /source4/auth/ntlm/auth.c | |
parent | 5d069a04fc843512b6a703691d81c4c1d28ef744 (diff) | |
download | samba-0b77cd969c54e4efa6faff507834c183958ec23c.tar.gz samba-0b77cd969c54e4efa6faff507834c183958ec23c.tar.xz samba-0b77cd969c54e4efa6faff507834c183958ec23c.zip |
s4-auth: Do not override the NT_STATUS_NOT_IMPLEMENTED error for winbindd
This changes the auth code in winbindd to use this as a flag, and to
therefore contact the RW DC.
Change-Id: If4164d27b57b453b398642fdf7d46d03cd0e65f2
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Nadezhda Ivanova <nivanova@samba.org>
Diffstat (limited to 'source4/auth/ntlm/auth.c')
-rw-r--r-- | source4/auth/ntlm/auth.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/source4/auth/ntlm/auth.c b/source4/auth/ntlm/auth.c index 6d5747eb78..1d1bc5eb85 100644 --- a/source4/auth/ntlm/auth.c +++ b/source4/auth/ntlm/auth.c @@ -375,9 +375,13 @@ static void auth_check_password_async_trigger(struct tevent_context *ev, } if (NT_STATUS_EQUAL(status, NT_STATUS_NOT_IMPLEMENTED)) { - /* don't expose the NT_STATUS_NOT_IMPLEMENTED - internals */ - status = NT_STATUS_NO_SUCH_USER; + if (!(state->user_info->flags & USER_INFO_LOCAL_SAM_ONLY)) { + /* don't expose the NT_STATUS_NOT_IMPLEMENTED + * internals, except when the caller is only probing + * one method, as they may do the fallback + */ + status = NT_STATUS_NO_SUCH_USER; + } } if (tevent_req_nterror(req, status)) { |