s4:rpc_server: Properly initialize ‘lsa_CreateTrustedDomainEx2’ structure (CID 1499404)
authorJoseph Sutton <josephsutton@catalyst.net.nz>
Mon, 30 Oct 2023 23:14:27 +0000 (12:14 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Thu, 2 Nov 2023 04:04:49 +0000 (04:04 +0000)
dcesrv_lsa_CreateTrustedDomain_base() invokes DCESRV_PULL_HANDLE(),
which invokes DCESRV_PULL_HANDLE_RETVAL(), which invokes
DCESRV_CHECK_HANDLE(), which might invoke DCESRV_FAULT(), which accesses
r2.out.result, which is uninitialized — invoking undefined behaviour.

Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Thu Nov  2 04:04:49 UTC 2023 on atb-devel-224

source4/rpc_server/lsa/dcesrv_lsa.c

index d1342747e88bfade78cd95d22b6e03ebc1dbd8c3..206c002f907217fe94e52ae5a2a562d9abb11406 100644 (file)
@@ -1431,7 +1431,7 @@ static NTSTATUS dcesrv_lsa_CreateTrustedDomainEx(struct dcesrv_call_state *dce_c
                                          TALLOC_CTX *mem_ctx,
                                          struct lsa_CreateTrustedDomainEx *r)
 {
-       struct lsa_CreateTrustedDomainEx2 r2;
+       struct lsa_CreateTrustedDomainEx2 r2 = {};
 
        r2.in.policy_handle = r->in.policy_handle;
        r2.in.info = r->in.info;