diff options
-rw-r--r-- | source3/smbd/sesssetup.c | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/source3/smbd/sesssetup.c b/source3/smbd/sesssetup.c index 486b4d137f..dba6dabd26 100644 --- a/source3/smbd/sesssetup.c +++ b/source3/smbd/sesssetup.c @@ -629,7 +629,6 @@ static void reply_spnego_ntlmssp(struct smb_request *req, const char *OID, bool wrap) { - bool do_invalidate = true; DATA_BLOB response; struct auth_serversupplied_info *server_info = NULL; struct smbd_server_connection *sconn = smbd_server_conn; @@ -664,11 +663,6 @@ static void reply_spnego_ntlmssp(struct smb_request *req, server_info, nullblob, auth_ntlmssp_get_username(*auth_ntlmssp_state)) != vuid) { - /* The problem is, *auth_ntlmssp_state points - * into the vuser this will have - * talloc_free()'ed in - * register_existing_vuid() */ - do_invalidate = false; nt_status = NT_STATUS_LOGON_FAILURE; goto out; } @@ -702,12 +696,10 @@ static void reply_spnego_ntlmssp(struct smb_request *req, if (!NT_STATUS_EQUAL(nt_status, NT_STATUS_MORE_PROCESSING_REQUIRED)) { /* NB. This is *NOT* an error case. JRA */ - if (do_invalidate) { - auth_ntlmssp_end(auth_ntlmssp_state); - if (!NT_STATUS_IS_OK(nt_status)) { - /* Kill the intermediate vuid */ - invalidate_vuid(sconn, vuid); - } + auth_ntlmssp_end(auth_ntlmssp_state); + if (!NT_STATUS_IS_OK(nt_status)) { + /* Kill the intermediate vuid */ + invalidate_vuid(sconn, vuid); } } } |