]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
smb3: on reconnect set PreviousSessionId field
authorSteve French <stfrench@microsoft.com>
Thu, 9 Aug 2018 12:43:12 +0000 (09:43 -0300)
committerKamal Mostafa <kamal@canonical.com>
Wed, 22 Aug 2018 20:41:14 +0000 (13:41 -0700)
BugLink: http://bugs.launchpad.net/bugs/1786110
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>
(cherry picked from commit b2adf22fdfba85a6701c481faccdbbb3a418ccfc)
Signed-off-by: Marcelo Henrique Cerri <marcelo.cerri@canonical.com>
Acked-by: Kamal Mostafa <kamal@canonical.com>
Acked-by: Stefan Bader <stefan.bader@canonical.com>
Signed-off-by: Khalid Elmously <khalid.elmously@canonical.com>
fs/cifs/smb2pdu.c

index 18bf0b9f19ed98a5bb7c3238757692244d7206f7..f942827ca0cb1beb6afe9c3109dd3a5e3083c6c7 100644 (file)
@@ -1181,6 +1181,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;
 
        while (sess_data->func)
                sess_data->func(sess_data);