smb3: on reconnect set PreviousSessionId field
authorSteve French <stfrench@microsoft.com>
Thu, 31 May 2018 20:19:25 +0000 (15:19 -0500)
committerSteve French <stfrench@microsoft.com>
Fri, 1 Jun 2018 02:23:07 +0000 (21:23 -0500)
The server detects reconnect by the (non-zero) value in PreviousSessionId
of SMB2/SMB3 SessionSetup request, but this behavior regressed due
to commit 166cea4dc3a4f66f020cfb9286225ecd228ab61d
("SMB2: Separate RawNTLMSSP authentication from SMB2_sess_setup")

CC: Stable <stable@vger.kernel.org>
CC: Sachin Prabhu <sprabhu@redhat.com>
Signed-off-by: Steve French <smfrench@gmail.com>
Reviewed-by: Ronnie Sahlberg <lsahlber@redhat.com>
fs/cifs/smb2pdu.c

index c92b4e6689bd0cee8f51e9c3f606bb7a2f1abce9..71e7a5a05f1224e10b2aacdd4403dc3f7988cac7 100644 (file)
@@ -1352,6 +1352,7 @@ SMB2_sess_setup(const unsigned int xid, struct cifs_ses *ses,
        sess_data->ses = ses;
        sess_data->buf0_type = CIFS_NO_BUFFER;
        sess_data->nls_cp = (struct nls_table *) nls_cp;
+       sess_data->previous_session = ses->Suid;
 
 #ifdef CONFIG_CIFS_SMB311
        /*