If someone tries to operate on a session that is not yet valid on the
current connection and the current session setup fails, then we should
not shutdown the session.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=14512
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
-^samba3.smb2.session.*.bind_invalid_auth
^samba3.smb2.session.*.bind_negative_smb210
^samba3.smb2.session.*.bind_negative_smb2to3
^samba3.smb2.session.*.bind_negative_smb3to2
^samba3.smb2.session.*.bind_negative_smb3to3
^samba3.smb2.session.*.bind_negative_smb3encGtoC
^samba3.smb2.session.*.bind_different_user.ad_dc
+^samba3.smb2.session.*.bind_invalid_auth.ad_member_idmap_rid
state->error = status;
+ if (state->in_flags & SMB2_SESSION_FLAG_BINDING) {
+ status = smbXsrv_session_remove_channel(state->smb2req->session,
+ state->smb2req->xconn);
+ if (tevent_req_nterror(req, status)) {
+ return;
+ }
+ tevent_req_nterror(req, state->error);
+ return;
+ }
+
+ if (NT_STATUS_EQUAL(state->error, NT_STATUS_USER_SESSION_DELETED)) {
+ tevent_req_nterror(req, state->error);
+ return;
+ }
+
subreq = smb2srv_session_shutdown_send(state, state->ev,
state->smb2req->session,
state->smb2req);