[bionic][PATCH] smb3: on reconnect set PreviousSessionId field

Marcelo Henrique Cerri marcelo.cerri at canonical.com
Thu Aug 9 12:43:12 UTC 2018


From: Steve French <stfrench at microsoft.com>

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 at vger.kernel.org>
CC: Sachin Prabhu <sprabhu at redhat.com>
Signed-off-by: Steve French <smfrench at gmail.com>
Reviewed-by: Ronnie Sahlberg <lsahlber at redhat.com>
(cherry picked from commit b2adf22fdfba85a6701c481faccdbbb3a418ccfc)
Signed-off-by: Marcelo Henrique Cerri <marcelo.cerri at canonical.com>
---
 fs/cifs/smb2pdu.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/fs/cifs/smb2pdu.c b/fs/cifs/smb2pdu.c
index 18bf0b9f19ed..f942827ca0cb 100644
--- a/fs/cifs/smb2pdu.c
+++ b/fs/cifs/smb2pdu.c
@@ -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);
-- 
2.17.1





More information about the kernel-team mailing list