[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 8a607e7577a netlogon_creds_cli: add netlogon_creds_cli_SendToSam_recv() and don't ignore result from dd07bb81bb9 libcli/smb: use MID=0 for SMB2 Cancel with ASYNC_ID and legacy signing algorithms https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 8a607e7577a259ae8a786f436241b41b6cc6c884 Author: Stefan Metzmacher Date: Mon Apr 16 16:08:29 2018 +0200 netlogon_creds_cli: add netlogon_creds_cli_SendToSam_recv() and don't ignore result This is a low level function that should not ignore results. If the caller doesn't care it's his choice. Signed-off-by: Stefan Metzmacher Reviewed-by: Jeremy Allison Autobuild-User(master): Jeremy Allison Autobuild-Date(master): Tue Oct 19 20:20:00 UTC 2021 on sn-devel-184 --- Summary of changes: libcli/auth/netlogon_creds_cli.c | 19 --- libcli/auth/netlogon_creds_cli.h | 2 +- 2 files changed, 17 insertions(+), 4 deletions(-) Changeset truncated at 500 lines: diff --git a/libcli/auth/netlogon_creds_cli.c b/libcli/auth/netlogon_creds_cli.c index e78bc173968..beab2fae53a 100644 --- a/libcli/auth/netlogon_creds_cli.c +++ b/libcli/auth/netlogon_creds_cli.c @@ -3820,6 +3820,20 @@ static void netlogon_creds_cli_SendToSam_done(struct tevent_req *subreq) tevent_req_done(req); } +NTSTATUS netlogon_creds_cli_SendToSam_recv(struct tevent_req *req) +{ + NTSTATUS status; + + if (tevent_req_is_nterror(req, &status)) { + netlogon_creds_cli_SendToSam_cleanup(req, status); + tevent_req_received(req); + return status; + } + + tevent_req_received(req); + return NT_STATUS_OK; +} + NTSTATUS netlogon_creds_cli_SendToSam(struct netlogon_creds_cli_context *context, struct dcerpc_binding_handle *b, struct netr_SendToSamBase *message) @@ -3827,7 +3841,7 @@ NTSTATUS netlogon_creds_cli_SendToSam(struct netlogon_creds_cli_context *context TALLOC_CTX *frame = talloc_stackframe(); struct tevent_context *ev; struct tevent_req *req; - NTSTATUS status = NT_STATUS_OK; + NTSTATUS status = NT_STATUS_NO_MEMORY; ev = samba_tevent_context_init(frame); if (ev == NULL) { @@ -3840,8 +3854,7 @@ NTSTATUS netlogon_creds_cli_SendToSam(struct netlogon_creds_cli_context *context if (!tevent_req_poll_ntstatus(req, ev, &status)) { goto fail; } - - /* Ignore the result */ + status = netlogon_creds_cli_SendToSam_recv(req); fail: TALLOC_FREE(frame); return status; diff --git a/libcli/auth/netlogon_creds_cli.h b/libcli/auth/netlogon_creds_cli.h index 7fb41872c36..6f40a46aa0a 100644 --- a/libcli/auth/netlogon_creds_cli.h +++ b/libcli/auth/netlogon_creds_cli.h @@ -208,7 +208,7 @@ struct tevent_req *netlogon_creds_cli_SendToSam_send(TALLOC_CTX *mem_ctx, struct netlogon_creds_cli_context *context, struct dcerpc_binding_handle *b, struct netr_SendToSamBase *message); - +NTSTATUS netlogon_creds_cli_SendToSam_recv(struct tevent_req *req); NTSTATUS netlogon_creds_cli_SendToSam( struct netlogon_creds_cli_context *context, struct dcerpc_binding_handle *b, -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via dd07bb81bb9 libcli/smb: use MID=0 for SMB2 Cancel with ASYNC_ID and legacy signing algorithms from 04f188f4d57 bootstrap: Debian 11 has liburing-dev https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit dd07bb81bb9a570b321bb2e5adab42546736ff9f Author: Stefan Metzmacher Date: Tue Sep 28 22:24:32 2021 +0200 libcli/smb: use MID=0 for SMB2 Cancel with ASYNC_ID and legacy signing algorithms We can only assume that servers with support for AES-GMAC-128 signing will except an SMB2 Cancel with ASYNC_ID and real MID. This strategy is also used by Windows clients, because some vendors don't cope otherwise. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14855 Signed-off-by: Stefan Metzmacher Reviewed-by: Jeremy Allison Autobuild-User(master): Jeremy Allison Autobuild-Date(master): Tue Oct 19 19:23:39 UTC 2021 on sn-devel-184 --- Summary of changes: libcli/smb/smb2_signing.c | 12 ++-- libcli/smb/smbXcli_base.c | 6 +- 2 files changed, 15 insertions(+), 3 deletions(-) Changeset truncated at 500 lines: diff --git a/libcli/smb/smb2_signing.c b/libcli/smb/smb2_signing.c index fdb223aec64..4a94b026ccc 100644 --- a/libcli/smb/smb2_signing.c +++ b/libcli/smb/smb2_signing.c @@ -430,8 +430,16 @@ static NTSTATUS smb2_signing_calc_signature(struct smb2_signing_key *signing_key } msg_id = BVAL(hdr, SMB2_HDR_MESSAGE_ID); if (msg_id == 0) { - DBG_ERR("opcode[%u] msg_id == 0\n", opcode); - return NT_STATUS_INTERNAL_ERROR; + if (opcode != SMB2_OP_CANCEL || + sign_algo_id >= SMB2_SIGNING_AES128_GMAC) + { + DBG_ERR("opcode[%u] msg_id == 0\n", opcode); + return NT_STATUS_INTERNAL_ERROR; + } + /* +* Legacy algorithms allow MID 0 +* for cancel requests +*/ } if (msg_id == UINT64_MAX) { DBG_ERR("opcode[%u] msg_id == UINT64_MAX\n", opcode); diff --git a/libcli/smb/smbXcli_base.c b/libcli/smb/smbXcli_base.c index 3fb51e33ffe..7579fa1c378 100644 --- a/libcli/smb/smbXcli_base.c +++ b/libcli/smb/smbXcli_base.c @@ -3318,7 +3318,11 @@ NTSTATUS smb2cli_req_compound_submit(struct tevent_req **reqs, state->smb2.cancel_flags = SVAL(state->smb2.hdr, SMB2_HDR_FLAGS); state->smb2.cancel_flags &= ~SMB2_HDR_FLAG_CHAINED; - state->smb2.cancel_mid = mid; + if (state->conn->smb2.server.sign_algo >= SMB2_SIGNING_AES128_GMAC) { + state->smb2.cancel_mid = mid; + } else { + state->smb2.cancel_mid = 0; + } state->smb2.cancel_aid = 0; skip_credits: -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 04f188f4d57 bootstrap: Debian 11 has liburing-dev from c901adaa0d4 bootstrap: Add Debian 11 https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 04f188f4d573f0138b75f26d1c18d98329a3446e Author: Martin Schwenke Date: Tue Oct 19 11:00:22 2021 +1100 bootstrap: Debian 11 has liburing-dev BUG: https://bugzilla.samba.org/show_bug.cgi?id=14872 Signed-off-by: Martin Schwenke Autobuild-User(master): Andrew Bartlett Autobuild-Date(master): Tue Oct 19 09:14:10 UTC 2021 on sn-devel-184 --- Summary of changes: .gitlab-ci-main.yml | 2 +- bootstrap/config.py | 1 - bootstrap/generated-dists/debian11/bootstrap.sh | 1 + bootstrap/generated-dists/debian11/packages.yml | 1 + bootstrap/sha1sum.txt | 2 +- 5 files changed, 4 insertions(+), 3 deletions(-) Changeset truncated at 500 lines: diff --git a/.gitlab-ci-main.yml b/.gitlab-ci-main.yml index ba8de6c22fe..cc48ec12a64 100644 --- a/.gitlab-ci-main.yml +++ b/.gitlab-ci-main.yml @@ -42,7 +42,7 @@ variables: # Set this to the contents of bootstrap/sha1sum.txt # which is generated by bootstrap/template.py --render # - SAMBA_CI_CONTAINER_TAG: 8d90789fe49d9003a7e5c66b1a00639bcce1238f + SAMBA_CI_CONTAINER_TAG: dd885c72c8615e2d6166a04f3709d9ceaa728f84 # # We use the ubuntu1804 image as default as # it matches what we have on sn-devel-184. diff --git a/bootstrap/config.py b/bootstrap/config.py index c98ece513ec..2cf754782a1 100644 --- a/bootstrap/config.py +++ b/bootstrap/config.py @@ -404,7 +404,6 @@ DEB_DISTS = { 'vagrant_box': 'debian/bullseye64', 'replace': { 'language-pack-en': '', # included in locales -'liburing-dev': '', # not available } }, 'ubuntu1804': { diff --git a/bootstrap/generated-dists/debian11/bootstrap.sh b/bootstrap/generated-dists/debian11/bootstrap.sh index 84f5f6855b7..07d6209c072 100755 --- a/bootstrap/generated-dists/debian11/bootstrap.sh +++ b/bootstrap/generated-dists/debian11/bootstrap.sh @@ -70,6 +70,7 @@ apt-get -y install \ libtasn1-dev \ libtracker-sparql-2.0-dev \ libunwind-dev \ +liburing-dev \ lmdb-utils \ locales \ lsb-release \ diff --git a/bootstrap/generated-dists/debian11/packages.yml b/bootstrap/generated-dists/debian11/packages.yml index 32f37eeb013..6d3c2385339 100644 --- a/bootstrap/generated-dists/debian11/packages.yml +++ b/bootstrap/generated-dists/debian11/packages.yml @@ -59,6 +59,7 @@ packages: - libtasn1-dev - libtracker-sparql-2.0-dev - libunwind-dev + - liburing-dev - lmdb-utils - locales - lsb-release diff --git a/bootstrap/sha1sum.txt b/bootstrap/sha1sum.txt index a9996ecf27d..60a3cced99c 100644 --- a/bootstrap/sha1sum.txt +++ b/bootstrap/sha1sum.txt @@ -1 +1 @@ -8d90789fe49d9003a7e5c66b1a00639bcce1238f +dd885c72c8615e2d6166a04f3709d9ceaa728f84 -- Samba Shared Repository