2 Unix SMB/CIFS implementation.
5 Copyright (C) Volker Lendecke 2005
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>.
22 #include "rpcclient.h"
23 #include "../librpc/gen_ndr/cli_lsa.h"
24 #include "rpc_client/cli_lsarpc.h"
25 #include "../librpc/gen_ndr/ndr_samr.h"
26 #include "../librpc/gen_ndr/winreg.h"
28 static NTSTATUS
cmd_testme(struct rpc_pipe_client
*cli
, TALLOC_CTX
*mem_ctx
,
29 int argc
, const char **argv
)
31 struct rpc_pipe_client
*lsa_pipe
= NULL
, *samr_pipe
= NULL
;
32 NTSTATUS status
= NT_STATUS_UNSUCCESSFUL
;
33 struct policy_handle pol
;
37 status
= cli_rpc_pipe_open_noauth(rpc_pipe_np_smb_conn(cli
),
38 &ndr_table_lsarpc
.syntax_id
,
40 if (!NT_STATUS_IS_OK(status
)) {
44 status
= cli_rpc_pipe_open_noauth(rpc_pipe_np_smb_conn(cli
),
45 &ndr_table_samr
.syntax_id
,
47 if (!NT_STATUS_IS_OK(status
)) {
51 status
= rpccli_lsa_open_policy(lsa_pipe
, mem_ctx
, False
,
52 KEY_QUERY_VALUE
, &pol
);
54 if (!NT_STATUS_IS_OK(status
))
57 status
= rpccli_lsa_Close(lsa_pipe
, mem_ctx
, &pol
);
59 if (!NT_STATUS_IS_OK(status
))
63 TALLOC_FREE(lsa_pipe
);
64 TALLOC_FREE(samr_pipe
);
69 /* List of commands exported by this module */
71 struct cmd_set test_commands
[] = {
75 { "testme", RPC_RTYPE_NTSTATUS
, cmd_testme
, NULL
,
76 NULL
, NULL
, "Sample test", "testme" },