diff options
Diffstat (limited to 'source4/torture/rpc')
-rw-r--r-- | source4/torture/rpc/dsgetinfo.c | 21 | ||||
-rw-r--r-- | source4/torture/rpc/winreg.c | 6 |
2 files changed, 16 insertions, 11 deletions
diff --git a/source4/torture/rpc/dsgetinfo.c b/source4/torture/rpc/dsgetinfo.c index b01dd773a6..acf93e8785 100644 --- a/source4/torture/rpc/dsgetinfo.c +++ b/source4/torture/rpc/dsgetinfo.c @@ -345,20 +345,25 @@ static bool test_getinfo(struct torture_context *tctx, r.out.info_type = &info_type; status = dcerpc_drsuapi_DsReplicaGetInfo_r(b, tctx, &r); - + if (!NT_STATUS_IS_OK(status) && p->last_fault_code == DCERPC_FAULT_INVALID_TAG) { + torture_comment(tctx, + "DsReplicaGetInfo level %d and/or infotype %d not supported by server\n", + array[i].level, array[i].infotype); + continue; + } + torture_assert_ntstatus_ok(tctx, status, talloc_asprintf(tctx, + "DsReplicaGetInfo level %d and/or infotype %d failed\n", + array[i].level, array[i].infotype)); if (W_ERROR_EQUAL(r.out.result, WERR_INVALID_LEVEL)) { /* this is a not yet supported level */ torture_comment(tctx, "DsReplicaGetInfo level %d and/or infotype %d not yet supported by server\n", array[i].level, array[i].infotype); invalid_levels++; - } else if (!NT_STATUS_IS_OK(status) && p->last_fault_code == DCERPC_FAULT_INVALID_TAG) { - torture_comment(tctx, - "DsReplicaGetInfo level %d and/or infotype %d not supported by server\n", - array[i].level, array[i].infotype); - }/* else { - torture_drsuapi_assert_call(tctx, p, status, &r, "dcerpc_drsuapi_DsReplicaGetInfo"); - }*/ + continue; + } + + torture_drsuapi_assert_call(tctx, p, status, &r, "dcerpc_drsuapi_DsReplicaGetInfo"); } if (invalid_levels > 0) { diff --git a/source4/torture/rpc/winreg.c b/source4/torture/rpc/winreg.c index d7e1247e65..461deff2d0 100644 --- a/source4/torture/rpc/winreg.c +++ b/source4/torture/rpc/winreg.c @@ -2437,7 +2437,7 @@ static bool test_Open(struct torture_context *tctx, struct dcerpc_pipe *p, struct winreg_OpenHKLM r; struct dcerpc_binding_handle *b = p->binding_handle; - winreg_open_fn open_fn = userdata; + winreg_open_fn open_fn = (winreg_open_fn)userdata; r.in.system_name = 0; r.in.access_mask = SEC_FLAG_MAXIMUM_ALLOWED; @@ -2451,7 +2451,7 @@ static bool test_Open(struct torture_context *tctx, struct dcerpc_pipe *p, ret = false; } - if (open_fn == (void *)dcerpc_winreg_OpenHKLM_r) { + if (open_fn == (winreg_open_fn)dcerpc_winreg_OpenHKLM_r) { torture_assert(tctx, test_HKLM_wellknown(tctx, b, &handle), "failed to test HKLM wellknown keys"); @@ -2468,7 +2468,7 @@ static bool test_Open(struct torture_context *tctx, struct dcerpc_pipe *p, } /* The HKCR hive has a very large fanout */ - if (open_fn == (void *)dcerpc_winreg_OpenHKCR_r) { + if (open_fn == (winreg_open_fn)dcerpc_winreg_OpenHKCR_r) { if(!test_key(p, tctx, &handle, MAX_DEPTH - 1, false)) { ret = false; } |