diff options
-rw-r--r-- | source3/rpcclient/cmd_test.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/source3/rpcclient/cmd_test.c b/source3/rpcclient/cmd_test.c index 3b91d877dc..591ae8cf3f 100644 --- a/source3/rpcclient/cmd_test.c +++ b/source3/rpcclient/cmd_test.c @@ -20,7 +20,7 @@ #include "includes.h" #include "rpcclient.h" -#include "../librpc/gen_ndr/cli_lsa.h" +#include "../librpc/gen_ndr/ndr_lsa_c.h" #include "rpc_client/cli_lsarpc.h" #include "../librpc/gen_ndr/ndr_samr.h" #include "../librpc/gen_ndr/winreg.h" @@ -29,8 +29,9 @@ static NTSTATUS cmd_testme(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, int argc, const char **argv) { struct rpc_pipe_client *lsa_pipe = NULL, *samr_pipe = NULL; - NTSTATUS status = NT_STATUS_UNSUCCESSFUL; + NTSTATUS status = NT_STATUS_UNSUCCESSFUL, result; struct policy_handle pol; + struct dcerpc_binding_handle *b; d_printf("testme\n"); @@ -48,16 +49,22 @@ static NTSTATUS cmd_testme(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, goto done; } + b = lsa_pipe->binding_handle; + status = rpccli_lsa_open_policy(lsa_pipe, mem_ctx, False, KEY_QUERY_VALUE, &pol); if (!NT_STATUS_IS_OK(status)) goto done; - status = rpccli_lsa_Close(lsa_pipe, mem_ctx, &pol); + status = dcerpc_lsa_Close(b, mem_ctx, &pol, &result); if (!NT_STATUS_IS_OK(status)) goto done; + if (!NT_STATUS_IS_OK(result)) { + status = result; + goto done; + } done: TALLOC_FREE(lsa_pipe); |