Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6188f28b authored by Steve French's avatar Steve French Committed by Steve French
Browse files

Tree connect for SMB3.1.1 must be signed for non-encrypted shares



SMB3.1.1 tree connect was only being signed when signing was mandatory
but needs to always be signed (for non-guest users).

See MS-SMB2 section 3.2.4.1.1

Signed-off-by: default avatarSteve French <smfrench@gmail.com>
Reviewed-by: default avatarPavel Shilovsky <pshilov@microsoft.com>
CC: Stable <stable@vger.kernel.org>
parent 262916bc
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -1305,6 +1305,11 @@ SMB2_tcon(const unsigned int xid, struct cifs_ses *ses, const char *tree,
	iov[1].iov_base = unc_path;
	iov[1].iov_len = unc_path_len;

	/* 3.11 tcon req must be signed if not encrypted. See MS-SMB2 3.2.4.1.1 */
	if ((ses->server->dialect == SMB311_PROT_ID) &&
	    !encryption_required(tcon))
		req->sync_hdr.Flags |= SMB2_FLAGS_SIGNED;

	rc = smb2_send_recv(xid, ses, iov, 2, &resp_buftype, flags, &rsp_iov);
	cifs_small_buf_release(req);
	rsp = (struct smb2_tree_connect_rsp *)rsp_iov.iov_base;