diff options
Diffstat (limited to 'source3/rpcclient/rpcclient.h')
-rw-r--r-- | source3/rpcclient/rpcclient.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/source3/rpcclient/rpcclient.h b/source3/rpcclient/rpcclient.h new file mode 100644 index 0000000..75ac575 --- /dev/null +++ b/source3/rpcclient/rpcclient.h @@ -0,0 +1,53 @@ +/* + Unix SMB/CIFS implementation. + RPC pipe client + + Copyright (C) Tim Potter 2000 + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +#ifndef RPCCLIENT_H +#define RPCCLIENT_H + +#include "rpc_client/cli_pipe.h" + +typedef enum { + RPC_RTYPE_NTSTATUS = 0, + RPC_RTYPE_WERROR, + RPC_RTYPE_BINDING, + MAX_RPC_RETURN_TYPE +} RPC_RETURN_TYPE; + +struct cmd_set { + const char *name; + RPC_RETURN_TYPE returntype; + NTSTATUS (*ntfn)(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, int argc, + const char **argv); + WERROR (*wfn)(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, int argc, const char **argv); + NTSTATUS (*bfn)(struct dcerpc_binding *binding, + TALLOC_CTX *mem_ctx, + int argc, + const char **argv); + const struct ndr_interface_table *table; + struct rpc_pipe_client *rpc_pipe; + const char *description; + const char *usage; + bool use_netlogon_creds; +}; + +extern struct messaging_context *rpcclient_msg_ctx; +extern struct netlogon_creds_cli_context *rpcclient_netlogon_creds; + +#endif /* RPCCLIENT_H */ |