diff options
author | Namjae Jeon <namjae.jeon@samsung.com> | 2021-07-27 09:30:29 +0900 |
---|---|---|
committer | Namjae Jeon <namjae.jeon@samsung.com> | 2021-07-27 09:30:59 +0900 |
commit | 08bdbc6ef46ad522a24dc6b8e01c039cb0c7e761 (patch) | |
tree | 3d01a5678857aa4f4a59cda9d4f45e3a1ab4922c /fs/ksmbd | |
parent | 9fb8fac08f6670c9bba70d6c616ad84dd7a45528 (diff) | |
download | linux-08bdbc6ef46ad522a24dc6b8e01c039cb0c7e761.tar.gz |
ksmbd: use channel signingkey for binding SMB2 session setup
Windows client disconnect connection by wrong signed SMB2 session
setup response on SMB3 multichannel mode.
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/ksmbd')
-rw-r--r-- | fs/ksmbd/smb2pdu.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/ksmbd/smb2pdu.c b/fs/ksmbd/smb2pdu.c index 93e98ef94c73..7f5ca471b306 100644 --- a/fs/ksmbd/smb2pdu.c +++ b/fs/ksmbd/smb2pdu.c @@ -8150,7 +8150,8 @@ void smb3_set_sign_rsp(struct ksmbd_work *work) len = ALIGN(len, 8); } - if (le16_to_cpu(hdr->Command) == SMB2_SESSION_SETUP_HE) { + if (conn->binding == false && + le16_to_cpu(hdr->Command) == SMB2_SESSION_SETUP_HE) { signing_key = work->sess->smb3signingkey; } else { chann = lookup_chann_list(work->sess, work->conn); |