From 32b84c5bce00c4f91191596dc00d9824e82e0f24 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Thu, 8 Feb 2024 15:31:10 +0100 Subject: [PATCH] smb2_tcon: only announce SMB3 related share capabilities if SMB3 is used BUG: https://bugzilla.samba.org/show_bug.cgi?id=15577 Signed-off-by: Stefan Metzmacher Reviewed-by: Guenther Deschner --- source3/smbd/smb2_tcon.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/source3/smbd/smb2_tcon.c b/source3/smbd/smb2_tcon.c index 8855202d7fd..b228036510a 100644 --- a/source3/smbd/smb2_tcon.c +++ b/source3/smbd/smb2_tcon.c @@ -425,7 +425,9 @@ static NTSTATUS smbd_smb2_tree_connect(struct smbd_smb2_request *req, * For disk shares we can change the client * behavior on a cluster... */ - if (*out_share_type == SMB2_SHARE_TYPE_DISK) { + if (conn->protocol >= PROTOCOL_SMB3_00 && + *out_share_type == SMB2_SHARE_TYPE_DISK) + { bool persistent = false; /* persistent handles not implemented yet */ bool cluster = lp_clustering(); bool scaleout = cluster; @@ -486,10 +488,12 @@ static NTSTATUS smbd_smb2_tree_connect(struct smbd_smb2_request *req, * an isolated transport and witness registration for the * specific share. */ - announce = lp_parm_bool(SNUM(tcon->compat), - "smb3 share cap", - "ASYMMETRIC", - asymmetric); + if (conn->protocol >= PROTOCOL_SMB3_02) { + announce = lp_parm_bool(SNUM(tcon->compat), + "smb3 share cap", + "ASYMMETRIC", + asymmetric); + } if (announce) { *out_capabilities |= SMB2_SHARE_CAP_ASYMMETRIC; }