s3:rpc_server:netlogon: generate FAULT_INVALID_TAG for invalid netr_LogonGetCapabilit...
authorStefan Metzmacher <metze@samba.org>
Sat, 15 Jul 2023 14:11:48 +0000 (16:11 +0200)
committerJule Anger <janger@samba.org>
Mon, 17 Jul 2023 08:28:47 +0000 (10:28 +0200)
commitcaf21883fa83a3277a1df405c32eeeda3950495b
tree7e8127374ff2727c9df59078feaaf6c6db3b83d5
parent585df7e0220b57c022b0a7218e52ec811ee5b05e
s3:rpc_server:netlogon: generate FAULT_INVALID_TAG for invalid netr_LogonGetCapabilities levels

This is important as Windows clients with KB5028166 seem to
call netr_LogonGetCapabilities with query_level=2 after
a call with query_level=1.

An unpatched Windows Server returns DCERPC_NCA_S_FAULT_INVALID_TAG
for query_level values other than 1.
While Samba tries to return NT_STATUS_NOT_SUPPORTED, but
later fails to marshall the response, which results
in DCERPC_FAULT_BAD_STUB_DATA instead.

Because we don't have any documentation for level 2 yet,
we just try to behave like an unpatched server and
generate DCERPC_NCA_S_FAULT_INVALID_TAG instead of
DCERPC_FAULT_BAD_STUB_DATA.
Which allows patched Windows clients to keep working
against a Samba DC.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15418

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Mon Jul 17 07:35:09 UTC 2023 on atb-devel-224

(cherry picked from commit dfeabce44fbb78083fbbb2aa634fc4172cf83db9)
selftest/knownfail.d/netr_LogonGetCapabilities [deleted file]
source3/rpc_server/netlogon/srv_netlog_nt.c