s4:torture/rpc/samr.c: Fix the "ValidatePassword" test
authorMatthias Dieter Wallnöfer <mdw@samba.org>
Tue, 25 May 2010 09:21:46 +0000 (11:21 +0200)
committerMatthias Dieter Wallnöfer <mdw@samba.org>
Tue, 25 May 2010 10:09:32 +0000 (12:09 +0200)
It was failing randomly due to an uninitialised "status" variable.

source4/torture/rpc/samr.c

index c44c4eff8d2c96b1dc25300e78976e58ef8d2f24..b87cac5ac911d0a47fface9d62c35f0185db4493 100644 (file)
@@ -7916,12 +7916,15 @@ static bool test_samr_ValidatePassword(struct dcerpc_pipe *p,
 
        for (i=0; passwords[i]; i++) {
                req.req3.password.string = passwords[i];
-               torture_assert_ntstatus_ok(tctx, dcerpc_samr_ValidatePassword_r(b, tctx, &r),
-                       "ValidatePassword failed");
+
+               status = dcerpc_samr_ValidatePassword_r(b, tctx, &r);
                if (NT_STATUS_EQUAL(status, NT_STATUS_RPC_PROCNUM_OUT_OF_RANGE)) {
                        torture_skip(tctx, "ValidatePassword not supported by server\n");
                }
-               torture_assert_ntstatus_ok(tctx, r.out.result, "samr_ValidatePassword");
+               torture_assert_ntstatus_ok(tctx, status,
+                                          "samr_ValidatePassword failed");
+               torture_assert_ntstatus_ok(tctx, r.out.result,
+                                          "samr_ValidatePassword failed");
                torture_comment(tctx, "Server %s password '%s' with code %i\n",
                                repp->ctr3.status==SAMR_VALIDATION_STATUS_SUCCESS?"allowed":"refused",
                                req.req3.password.string, repp->ctr3.status);