]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
s4:torture: Fully initialize struct samr_OpenUser
authorAndreas Schneider <asn@samba.org>
Mon, 24 Jun 2024 13:09:21 +0000 (15:09 +0200)
committerAndreas Schneider <asn@cryptomilk.org>
Fri, 28 Jun 2024 11:39:33 +0000 (11:39 +0000)
"Error: UNINIT (CWE-457):
samba-4.20.0rc2/source4/torture/rpc/samr.c:7381: var_decl: Declaring variable ""r"" without initializer.
samba-4.20.0rc2/source4/torture/rpc/samr.c:7428: uninit_use: Using uninitialized value ""r.out.result.v"".
 7426|    torture_assert_ntstatus_ok(tctx, dcerpc_samr_QueryUserInfo_r(b, tctx, &q),
 7427|    ""QueryUserInfo failed"");
 7428|->  if (!NT_STATUS_IS_OK(r.out.result)) {
 7429|    torture_result(tctx, TORTURE_FAIL, ""QueryUserInfo(%u) failed - %s\n"", r.in.rid, nt_errstr(r.out.result));
 7430|    return false;"

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Noel Power <npower@samba.org>
source4/torture/rpc/samr.c

index 22e0606de96e780a7a6c4a2d289846a84ebc7a7b..b7d0b2c72cfaf2b0192d8d9b29811894729a895e 100644 (file)
@@ -7378,13 +7378,17 @@ static bool test_each_DisplayInfo_user(struct dcerpc_binding_handle *b,
                                       struct samr_QueryDisplayInfo *querydisplayinfo,
                                       bool *seen_testuser)
 {
-       struct samr_OpenUser r;
+       struct samr_OpenUser r = {
+               .in = {
+                       .domain_handle = querydisplayinfo->in.domain_handle,
+                       .access_mask = SEC_FLAG_MAXIMUM_ALLOWED,
+               },
+       };
        struct samr_QueryUserInfo q;
        union samr_UserInfo *info;
        struct policy_handle user_handle;
        int i, ret = true;
-       r.in.domain_handle = querydisplayinfo->in.domain_handle;
-       r.in.access_mask = SEC_FLAG_MAXIMUM_ALLOWED;
+
        for (i = 0; ; i++) {
                switch (querydisplayinfo->in.level) {
                case 1: