diff options
author | Günther Deschner <gd@samba.org> | 2015-03-06 00:06:25 +0100 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2015-03-13 23:58:09 +0100 |
commit | 5c3f83a11d64fd445b13599f721935c1a37877a6 (patch) | |
tree | 6e41d27c3d710e64b4676c3412980c3d09e89c65 /source4 | |
parent | a22f43c865a7929a2d0dfd9e46490c003135a0fa (diff) | |
download | samba-5c3f83a11d64fd445b13599f721935c1a37877a6.tar.gz |
s4-torture: add tests for clusapi_BackupClusterDatabase and clusapi_SetServiceAccountPassword.
Guenther
Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Diffstat (limited to 'source4')
-rw-r--r-- | source4/torture/rpc/clusapi.c | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/source4/torture/rpc/clusapi.c b/source4/torture/rpc/clusapi.c index 551d1682441..326caa916a4 100644 --- a/source4/torture/rpc/clusapi.c +++ b/source4/torture/rpc/clusapi.c @@ -1618,6 +1618,53 @@ static bool test_all_groups(struct torture_context *tctx, return true; } +static bool test_BackupClusterDatabase(struct torture_context *tctx, + struct dcerpc_pipe *p) +{ + struct dcerpc_binding_handle *b = p->binding_handle; + struct clusapi_BackupClusterDatabase r; + WERROR rpc_status; + + r.in.lpszPathName = "c:\\cluster_backup"; + r.out.rpc_status = &rpc_status; + + torture_assert_ntstatus_ok(tctx, + dcerpc_clusapi_BackupClusterDatabase_r(b, tctx, &r), + "BackupClusterDatabase failed"); + torture_assert_werr_equal(tctx, + r.out.result, + WERR_CALL_NOT_IMPLEMENTED, + "BackupClusterDatabase failed"); + + return true; +} + +static bool test_SetServiceAccountPassword(struct torture_context *tctx, + struct dcerpc_pipe *p) +{ + struct dcerpc_binding_handle *b = p->binding_handle; + struct clusapi_SetServiceAccountPassword r; + uint32_t SizeReturned; + uint32_t ExpectedBufferSize; + + r.in.lpszNewPassword = "P@ssw0rd!"; + r.in.dwFlags = IDL_CLUSTER_SET_PASSWORD_IGNORE_DOWN_NODES; + r.in.ReturnStatusBufferSize = 1024; + r.out.ReturnStatusBufferPtr = NULL; + r.out.SizeReturned = &SizeReturned; + r.out.ExpectedBufferSize = &ExpectedBufferSize; + + torture_assert_ntstatus_ok(tctx, + dcerpc_clusapi_SetServiceAccountPassword_r(b, tctx, &r), + "SetServiceAccountPassword failed"); + torture_assert_werr_equal(tctx, + r.out.result, + WERR_CALL_NOT_IMPLEMENTED, + "SetServiceAccountPassword failed"); + + return true; +} + struct torture_suite *torture_rpc_clusapi(TALLOC_CTX *mem_ctx) { struct torture_rpc_tcase *tcase; @@ -1645,6 +1692,10 @@ struct torture_suite *torture_rpc_clusapi(TALLOC_CTX *mem_ctx) test_GetClusterVersion2); torture_rpc_tcase_add_test(tcase, "CreateResEnum", test_CreateResEnum); + torture_rpc_tcase_add_test(tcase, "BackupClusterDatabase", + test_BackupClusterDatabase); + torture_rpc_tcase_add_test(tcase, "SetServiceAccountPassword", + test_SetServiceAccountPassword); torture_rpc_tcase_add_test(tcase, "all_resources", test_all_resources); |