summaryrefslogtreecommitdiff
path: root/source3/smbd/smb2_negprot.c
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2011-12-22 13:11:57 +0100
committerStefan Metzmacher <metze@samba.org>2011-12-22 15:58:45 +0100
commit460fc521cfd15b81dfc1e1ede01043c13d9b2ee7 (patch)
treed4832da980d3735b16a91c910184bf4d79fee242 /source3/smbd/smb2_negprot.c
parent2bd2f3880e3ec1a241ae4cc2a961ec8c04fece29 (diff)
downloadsamba-460fc521cfd15b81dfc1e1ede01043c13d9b2ee7.tar.gz
samba-460fc521cfd15b81dfc1e1ede01043c13d9b2ee7.tar.bz2
samba-460fc521cfd15b81dfc1e1ede01043c13d9b2ee7.zip
s3:smb2_negprot: add support for PROTOCOL_SMB2_24
metze
Diffstat (limited to 'source3/smbd/smb2_negprot.c')
-rw-r--r--source3/smbd/smb2_negprot.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/source3/smbd/smb2_negprot.c b/source3/smbd/smb2_negprot.c
index 61d20082d8..4cae143d75 100644
--- a/source3/smbd/smb2_negprot.c
+++ b/source3/smbd/smb2_negprot.c
@@ -119,6 +119,21 @@ NTSTATUS smbd_smb2_request_process_negprot(struct smbd_smb2_request *req)
indyn = (const uint8_t *)req->in.vector[i+2].iov_base;
for (c=0; protocol == PROTOCOL_NONE && c < dialect_count; c++) {
+ if (lp_maxprotocol() < PROTOCOL_SMB2_24) {
+ break;
+ }
+ if (lp_minprotocol() > PROTOCOL_SMB2_24) {
+ break;
+ }
+
+ dialect = SVAL(indyn, c*2);
+ if (dialect == SMB2_DIALECT_REVISION_224) {
+ protocol = PROTOCOL_SMB2_24;
+ break;
+ }
+ }
+
+ for (c=0; protocol == PROTOCOL_NONE && c < dialect_count; c++) {
if (lp_maxprotocol() < PROTOCOL_SMB2_22) {
break;
}