diff options
author | Jeremy Allison <jra@samba.org> | 2010-08-09 16:16:24 -0700 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2010-08-09 16:16:24 -0700 |
commit | e0f79dabee39c3f3e49823055c3a30929278a294 (patch) | |
tree | ea9f88b302fade72342ec50e83075ba6e0adbe8d /source3/smbd | |
parent | 7b419696036bbcf7e37792721899bc65b4a2f0f8 (diff) | |
download | samba-e0f79dabee39c3f3e49823055c3a30929278a294.tar.gz samba-e0f79dabee39c3f3e49823055c3a30929278a294.tar.bz2 samba-e0f79dabee39c3f3e49823055c3a30929278a294.zip |
Fix bug #7608 - Win7 SMB2 authentication causes smbd panic
We need to call setup_ntlmssp_server_info() if status==NT_STATUS_OK,
or if status is anything except NT_STATUS_MORE_PROCESSING_REQUIRED,
as this can trigger map to guest.
Jeremy.
Diffstat (limited to 'source3/smbd')
-rw-r--r-- | source3/smbd/smb2_sesssetup.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source3/smbd/smb2_sesssetup.c b/source3/smbd/smb2_sesssetup.c index 3ca7ae7638..c51a0fd039 100644 --- a/source3/smbd/smb2_sesssetup.c +++ b/source3/smbd/smb2_sesssetup.c @@ -787,8 +787,10 @@ static NTSTATUS smbd_smb2_spnego_auth(struct smbd_smb2_session *session, status = auth_ntlmssp_update(session->auth_ntlmssp_state, auth, &auth_out); - if (!NT_STATUS_IS_OK(status) && - !NT_STATUS_EQUAL(status, NT_STATUS_MORE_PROCESSING_REQUIRED)) { + /* We need to call setup_ntlmssp_server_info() if status==NT_STATUS_OK, + or if status is anything except NT_STATUS_MORE_PROCESSING_REQUIRED, + as this can trigger map to guest. */ + if (!NT_STATUS_EQUAL(status, NT_STATUS_MORE_PROCESSING_REQUIRED)) { status = setup_ntlmssp_server_info(session, status); } |