The branch, master has been updated via 005798f s3:smb2_negprot: add support for SMB2_22 via d3ded49 lib/param: add "SMB2_22" to enum_protocol from 6d29581 s4-dsdb: Modify the repl_meta_data behavior to allow Metadata change on attribute interSiteTopologyGenerator even if the value didn't change
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 005798fa0ba118ba668e378063f778fa0438ab4e Author: Stefan Metzmacher <me...@samba.org> Date: Sat Nov 19 14:02:22 2011 +0100 s3:smb2_negprot: add support for SMB2_22 metze Autobuild-User: Stefan Metzmacher <me...@samba.org> Autobuild-Date: Sun Nov 20 16:46:45 CET 2011 on sn-devel-104 commit d3ded49b06bcba690eeabfdb97a004d700fdfe5e Author: Stefan Metzmacher <me...@samba.org> Date: Sat Nov 19 14:01:25 2011 +0100 lib/param: add "SMB2_22" to enum_protocol metze ----------------------------------------------------------------------- Summary of changes: lib/param/param_enums.c | 1 + source3/smbd/smb2_negprot.c | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 0 deletions(-) Changeset truncated at 500 lines: diff --git a/lib/param/param_enums.c b/lib/param/param_enums.c index cdc5b5e..9307a0c 100644 --- a/lib/param/param_enums.c +++ b/lib/param/param_enums.c @@ -29,6 +29,7 @@ static const struct enum_list enum_protocol[] = { {PROTOCOL_SMB2_02, "SMB2"}, /* for now keep PROTOCOL_SMB2_02 */ + {PROTOCOL_SMB2_22, "SMB2_22"}, {PROTOCOL_SMB2_10, "SMB2_10"}, {PROTOCOL_SMB2_02, "SMB2_02"}, {PROTOCOL_NT1, "NT1"}, diff --git a/source3/smbd/smb2_negprot.c b/source3/smbd/smb2_negprot.c index ba55662..61d2008 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_22) { + break; + } + if (lp_minprotocol() > PROTOCOL_SMB2_22) { + break; + } + + dialect = SVAL(indyn, c*2); + if (dialect == SMB2_DIALECT_REVISION_222) { + protocol = PROTOCOL_SMB2_22; + break; + } + } + + for (c=0; protocol == PROTOCOL_NONE && c < dialect_count; c++) { if (lp_maxprotocol() < PROTOCOL_SMB2_10) { break; } -- Samba Shared Repository