diff options
Diffstat (limited to 'librpc/gen_ndr/cli_wkssvc.c')
-rw-r--r-- | librpc/gen_ndr/cli_wkssvc.c | 4889 |
1 files changed, 0 insertions, 4889 deletions
diff --git a/librpc/gen_ndr/cli_wkssvc.c b/librpc/gen_ndr/cli_wkssvc.c deleted file mode 100644 index b8465d9bef..0000000000 --- a/librpc/gen_ndr/cli_wkssvc.c +++ /dev/null @@ -1,4889 +0,0 @@ -/* - * Unix SMB/CIFS implementation. - * client auto-generated by pidl. DO NOT MODIFY! - */ - -#include "includes.h" -#include "../librpc/gen_ndr/cli_wkssvc.h" - -struct rpccli_wkssvc_NetWkstaGetInfo_state { - struct wkssvc_NetWkstaGetInfo orig; - struct wkssvc_NetWkstaGetInfo tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetWkstaGetInfo_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetWkstaGetInfo_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - uint32_t _level /* [in] */, - union wkssvc_NetWkstaInfo *_info /* [out] [ref,switch_is(level)] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetWkstaGetInfo_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetWkstaGetInfo_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.level = _level; - - /* Out parameters */ - state->orig.out.info = _info; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetWkstaGetInfo_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETWKSTAGETINFO, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetWkstaGetInfo_done, req); - return req; -} - -static void rpccli_wkssvc_NetWkstaGetInfo_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetWkstaGetInfo_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetWkstaGetInfo_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - *state->orig.out.info = *state->tmp.out.info; - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetWkstaGetInfo_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetWkstaGetInfo_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetWkstaGetInfo_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetWkstaGetInfo(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - uint32_t level /* [in] */, - union wkssvc_NetWkstaInfo *info /* [out] [ref,switch_is(level)] */, - WERROR *werror) -{ - struct wkssvc_NetWkstaGetInfo r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.level = level; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETWKSTAGETINFO, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - *info = *r.out.info; - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetWkstaSetInfo_state { - struct wkssvc_NetWkstaSetInfo orig; - struct wkssvc_NetWkstaSetInfo tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetWkstaSetInfo_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetWkstaSetInfo_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - uint32_t _level /* [in] */, - union wkssvc_NetWkstaInfo *_info /* [in] [ref,switch_is(level)] */, - uint32_t *_parm_error /* [in,out] [ref] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetWkstaSetInfo_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetWkstaSetInfo_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.level = _level; - state->orig.in.info = _info; - state->orig.in.parm_error = _parm_error; - - /* Out parameters */ - state->orig.out.parm_error = _parm_error; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetWkstaSetInfo_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETWKSTASETINFO, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetWkstaSetInfo_done, req); - return req; -} - -static void rpccli_wkssvc_NetWkstaSetInfo_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetWkstaSetInfo_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetWkstaSetInfo_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - *state->orig.out.parm_error = *state->tmp.out.parm_error; - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetWkstaSetInfo_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetWkstaSetInfo_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetWkstaSetInfo_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetWkstaSetInfo(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - uint32_t level /* [in] */, - union wkssvc_NetWkstaInfo *info /* [in] [ref,switch_is(level)] */, - uint32_t *parm_error /* [in,out] [ref] */, - WERROR *werror) -{ - struct wkssvc_NetWkstaSetInfo r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.level = level; - r.in.info = info; - r.in.parm_error = parm_error; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETWKSTASETINFO, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - *parm_error = *r.out.parm_error; - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetWkstaEnumUsers_state { - struct wkssvc_NetWkstaEnumUsers orig; - struct wkssvc_NetWkstaEnumUsers tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetWkstaEnumUsers_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetWkstaEnumUsers_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - struct wkssvc_NetWkstaEnumUsersInfo *_info /* [in,out] [ref] */, - uint32_t _prefmaxlen /* [in] */, - uint32_t *_entries_read /* [out] [ref] */, - uint32_t *_resume_handle /* [in,out] [unique] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetWkstaEnumUsers_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetWkstaEnumUsers_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.info = _info; - state->orig.in.prefmaxlen = _prefmaxlen; - state->orig.in.resume_handle = _resume_handle; - - /* Out parameters */ - state->orig.out.info = _info; - state->orig.out.entries_read = _entries_read; - state->orig.out.resume_handle = _resume_handle; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetWkstaEnumUsers_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETWKSTAENUMUSERS, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetWkstaEnumUsers_done, req); - return req; -} - -static void rpccli_wkssvc_NetWkstaEnumUsers_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetWkstaEnumUsers_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetWkstaEnumUsers_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - *state->orig.out.info = *state->tmp.out.info; - *state->orig.out.entries_read = *state->tmp.out.entries_read; - if (state->orig.out.resume_handle && state->tmp.out.resume_handle) { - *state->orig.out.resume_handle = *state->tmp.out.resume_handle; - } - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetWkstaEnumUsers_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetWkstaEnumUsers_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetWkstaEnumUsers_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetWkstaEnumUsers(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - struct wkssvc_NetWkstaEnumUsersInfo *info /* [in,out] [ref] */, - uint32_t prefmaxlen /* [in] */, - uint32_t *entries_read /* [out] [ref] */, - uint32_t *resume_handle /* [in,out] [unique] */, - WERROR *werror) -{ - struct wkssvc_NetWkstaEnumUsers r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.info = info; - r.in.prefmaxlen = prefmaxlen; - r.in.resume_handle = resume_handle; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETWKSTAENUMUSERS, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - *info = *r.out.info; - *entries_read = *r.out.entries_read; - if (resume_handle && r.out.resume_handle) { - *resume_handle = *r.out.resume_handle; - } - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrWkstaUserGetInfo_state { - struct wkssvc_NetrWkstaUserGetInfo orig; - struct wkssvc_NetrWkstaUserGetInfo tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrWkstaUserGetInfo_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrWkstaUserGetInfo_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_unknown /* [in] [unique,charset(UTF16)] */, - uint32_t _level /* [in] */, - union wkssvc_NetrWkstaUserInfo *_info /* [out] [ref,switch_is(level)] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrWkstaUserGetInfo_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrWkstaUserGetInfo_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.unknown = _unknown; - state->orig.in.level = _level; - - /* Out parameters */ - state->orig.out.info = _info; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetrWkstaUserGetInfo_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRWKSTAUSERGETINFO, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrWkstaUserGetInfo_done, req); - return req; -} - -static void rpccli_wkssvc_NetrWkstaUserGetInfo_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrWkstaUserGetInfo_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrWkstaUserGetInfo_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - *state->orig.out.info = *state->tmp.out.info; - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrWkstaUserGetInfo_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrWkstaUserGetInfo_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrWkstaUserGetInfo_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrWkstaUserGetInfo(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *unknown /* [in] [unique,charset(UTF16)] */, - uint32_t level /* [in] */, - union wkssvc_NetrWkstaUserInfo *info /* [out] [ref,switch_is(level)] */, - WERROR *werror) -{ - struct wkssvc_NetrWkstaUserGetInfo r; - NTSTATUS status; - - /* In parameters */ - r.in.unknown = unknown; - r.in.level = level; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRWKSTAUSERGETINFO, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - *info = *r.out.info; - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrWkstaUserSetInfo_state { - struct wkssvc_NetrWkstaUserSetInfo orig; - struct wkssvc_NetrWkstaUserSetInfo tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrWkstaUserSetInfo_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrWkstaUserSetInfo_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_unknown /* [in] [unique,charset(UTF16)] */, - uint32_t _level /* [in] */, - union wkssvc_NetrWkstaUserInfo *_info /* [in] [ref,switch_is(level)] */, - uint32_t *_parm_err /* [in,out] [unique] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrWkstaUserSetInfo_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrWkstaUserSetInfo_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.unknown = _unknown; - state->orig.in.level = _level; - state->orig.in.info = _info; - state->orig.in.parm_err = _parm_err; - - /* Out parameters */ - state->orig.out.parm_err = _parm_err; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetrWkstaUserSetInfo_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRWKSTAUSERSETINFO, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrWkstaUserSetInfo_done, req); - return req; -} - -static void rpccli_wkssvc_NetrWkstaUserSetInfo_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrWkstaUserSetInfo_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrWkstaUserSetInfo_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - if (state->orig.out.parm_err && state->tmp.out.parm_err) { - *state->orig.out.parm_err = *state->tmp.out.parm_err; - } - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrWkstaUserSetInfo_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrWkstaUserSetInfo_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrWkstaUserSetInfo_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrWkstaUserSetInfo(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *unknown /* [in] [unique,charset(UTF16)] */, - uint32_t level /* [in] */, - union wkssvc_NetrWkstaUserInfo *info /* [in] [ref,switch_is(level)] */, - uint32_t *parm_err /* [in,out] [unique] */, - WERROR *werror) -{ - struct wkssvc_NetrWkstaUserSetInfo r; - NTSTATUS status; - - /* In parameters */ - r.in.unknown = unknown; - r.in.level = level; - r.in.info = info; - r.in.parm_err = parm_err; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRWKSTAUSERSETINFO, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - if (parm_err && r.out.parm_err) { - *parm_err = *r.out.parm_err; - } - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetWkstaTransportEnum_state { - struct wkssvc_NetWkstaTransportEnum orig; - struct wkssvc_NetWkstaTransportEnum tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetWkstaTransportEnum_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetWkstaTransportEnum_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - struct wkssvc_NetWkstaTransportInfo *_info /* [in,out] [ref] */, - uint32_t _max_buffer /* [in] */, - uint32_t *_total_entries /* [out] [ref] */, - uint32_t *_resume_handle /* [in,out] [unique] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetWkstaTransportEnum_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetWkstaTransportEnum_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.info = _info; - state->orig.in.max_buffer = _max_buffer; - state->orig.in.resume_handle = _resume_handle; - - /* Out parameters */ - state->orig.out.info = _info; - state->orig.out.total_entries = _total_entries; - state->orig.out.resume_handle = _resume_handle; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetWkstaTransportEnum_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETWKSTATRANSPORTENUM, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetWkstaTransportEnum_done, req); - return req; -} - -static void rpccli_wkssvc_NetWkstaTransportEnum_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetWkstaTransportEnum_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetWkstaTransportEnum_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - *state->orig.out.info = *state->tmp.out.info; - *state->orig.out.total_entries = *state->tmp.out.total_entries; - if (state->orig.out.resume_handle && state->tmp.out.resume_handle) { - *state->orig.out.resume_handle = *state->tmp.out.resume_handle; - } - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetWkstaTransportEnum_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetWkstaTransportEnum_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetWkstaTransportEnum_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetWkstaTransportEnum(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - struct wkssvc_NetWkstaTransportInfo *info /* [in,out] [ref] */, - uint32_t max_buffer /* [in] */, - uint32_t *total_entries /* [out] [ref] */, - uint32_t *resume_handle /* [in,out] [unique] */, - WERROR *werror) -{ - struct wkssvc_NetWkstaTransportEnum r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.info = info; - r.in.max_buffer = max_buffer; - r.in.resume_handle = resume_handle; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETWKSTATRANSPORTENUM, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - *info = *r.out.info; - *total_entries = *r.out.total_entries; - if (resume_handle && r.out.resume_handle) { - *resume_handle = *r.out.resume_handle; - } - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrWkstaTransportAdd_state { - struct wkssvc_NetrWkstaTransportAdd orig; - struct wkssvc_NetrWkstaTransportAdd tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrWkstaTransportAdd_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrWkstaTransportAdd_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - uint32_t _level /* [in] */, - struct wkssvc_NetWkstaTransportInfo0 *_info0 /* [in] [ref] */, - uint32_t *_parm_err /* [in,out] [unique] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrWkstaTransportAdd_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrWkstaTransportAdd_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.level = _level; - state->orig.in.info0 = _info0; - state->orig.in.parm_err = _parm_err; - - /* Out parameters */ - state->orig.out.parm_err = _parm_err; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetrWkstaTransportAdd_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRWKSTATRANSPORTADD, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrWkstaTransportAdd_done, req); - return req; -} - -static void rpccli_wkssvc_NetrWkstaTransportAdd_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrWkstaTransportAdd_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrWkstaTransportAdd_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - if (state->orig.out.parm_err && state->tmp.out.parm_err) { - *state->orig.out.parm_err = *state->tmp.out.parm_err; - } - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrWkstaTransportAdd_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrWkstaTransportAdd_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrWkstaTransportAdd_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrWkstaTransportAdd(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - uint32_t level /* [in] */, - struct wkssvc_NetWkstaTransportInfo0 *info0 /* [in] [ref] */, - uint32_t *parm_err /* [in,out] [unique] */, - WERROR *werror) -{ - struct wkssvc_NetrWkstaTransportAdd r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.level = level; - r.in.info0 = info0; - r.in.parm_err = parm_err; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRWKSTATRANSPORTADD, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - if (parm_err && r.out.parm_err) { - *parm_err = *r.out.parm_err; - } - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrWkstaTransportDel_state { - struct wkssvc_NetrWkstaTransportDel orig; - struct wkssvc_NetrWkstaTransportDel tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrWkstaTransportDel_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrWkstaTransportDel_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_transport_name /* [in] [unique,charset(UTF16)] */, - uint32_t _unknown3 /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrWkstaTransportDel_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrWkstaTransportDel_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.transport_name = _transport_name; - state->orig.in.unknown3 = _unknown3; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRWKSTATRANSPORTDEL, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrWkstaTransportDel_done, req); - return req; -} - -static void rpccli_wkssvc_NetrWkstaTransportDel_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrWkstaTransportDel_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrWkstaTransportDel_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrWkstaTransportDel_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrWkstaTransportDel_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrWkstaTransportDel_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrWkstaTransportDel(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *transport_name /* [in] [unique,charset(UTF16)] */, - uint32_t unknown3 /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrWkstaTransportDel r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.transport_name = transport_name; - r.in.unknown3 = unknown3; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRWKSTATRANSPORTDEL, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrUseAdd_state { - struct wkssvc_NetrUseAdd orig; - struct wkssvc_NetrUseAdd tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrUseAdd_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrUseAdd_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - uint32_t _level /* [in] */, - union wkssvc_NetrUseGetInfoCtr *_ctr /* [in] [ref,switch_is(level)] */, - uint32_t *_parm_err /* [in,out] [unique] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrUseAdd_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrUseAdd_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.level = _level; - state->orig.in.ctr = _ctr; - state->orig.in.parm_err = _parm_err; - - /* Out parameters */ - state->orig.out.parm_err = _parm_err; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetrUseAdd_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRUSEADD, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrUseAdd_done, req); - return req; -} - -static void rpccli_wkssvc_NetrUseAdd_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrUseAdd_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrUseAdd_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - if (state->orig.out.parm_err && state->tmp.out.parm_err) { - *state->orig.out.parm_err = *state->tmp.out.parm_err; - } - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrUseAdd_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrUseAdd_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrUseAdd_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrUseAdd(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - uint32_t level /* [in] */, - union wkssvc_NetrUseGetInfoCtr *ctr /* [in] [ref,switch_is(level)] */, - uint32_t *parm_err /* [in,out] [unique] */, - WERROR *werror) -{ - struct wkssvc_NetrUseAdd r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.level = level; - r.in.ctr = ctr; - r.in.parm_err = parm_err; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRUSEADD, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - if (parm_err && r.out.parm_err) { - *parm_err = *r.out.parm_err; - } - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrUseGetInfo_state { - struct wkssvc_NetrUseGetInfo orig; - struct wkssvc_NetrUseGetInfo tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrUseGetInfo_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrUseGetInfo_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_use_name /* [in] [ref,charset(UTF16)] */, - uint32_t _level /* [in] */, - union wkssvc_NetrUseGetInfoCtr *_ctr /* [out] [ref,switch_is(level)] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrUseGetInfo_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrUseGetInfo_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.use_name = _use_name; - state->orig.in.level = _level; - - /* Out parameters */ - state->orig.out.ctr = _ctr; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetrUseGetInfo_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRUSEGETINFO, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrUseGetInfo_done, req); - return req; -} - -static void rpccli_wkssvc_NetrUseGetInfo_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrUseGetInfo_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrUseGetInfo_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - *state->orig.out.ctr = *state->tmp.out.ctr; - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrUseGetInfo_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrUseGetInfo_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrUseGetInfo_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrUseGetInfo(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *use_name /* [in] [ref,charset(UTF16)] */, - uint32_t level /* [in] */, - union wkssvc_NetrUseGetInfoCtr *ctr /* [out] [ref,switch_is(level)] */, - WERROR *werror) -{ - struct wkssvc_NetrUseGetInfo r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.use_name = use_name; - r.in.level = level; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRUSEGETINFO, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - *ctr = *r.out.ctr; - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrUseDel_state { - struct wkssvc_NetrUseDel orig; - struct wkssvc_NetrUseDel tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrUseDel_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrUseDel_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_use_name /* [in] [ref,charset(UTF16)] */, - uint32_t _force_cond /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrUseDel_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrUseDel_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.use_name = _use_name; - state->orig.in.force_cond = _force_cond; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRUSEDEL, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrUseDel_done, req); - return req; -} - -static void rpccli_wkssvc_NetrUseDel_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrUseDel_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrUseDel_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrUseDel_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrUseDel_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrUseDel_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrUseDel(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *use_name /* [in] [ref,charset(UTF16)] */, - uint32_t force_cond /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrUseDel r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.use_name = use_name; - r.in.force_cond = force_cond; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRUSEDEL, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrUseEnum_state { - struct wkssvc_NetrUseEnum orig; - struct wkssvc_NetrUseEnum tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrUseEnum_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrUseEnum_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - struct wkssvc_NetrUseEnumInfo *_info /* [in,out] [ref] */, - uint32_t _prefmaxlen /* [in] */, - uint32_t *_entries_read /* [out] [ref] */, - uint32_t *_resume_handle /* [in,out] [unique] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrUseEnum_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrUseEnum_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.info = _info; - state->orig.in.prefmaxlen = _prefmaxlen; - state->orig.in.resume_handle = _resume_handle; - - /* Out parameters */ - state->orig.out.info = _info; - state->orig.out.entries_read = _entries_read; - state->orig.out.resume_handle = _resume_handle; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetrUseEnum_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRUSEENUM, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrUseEnum_done, req); - return req; -} - -static void rpccli_wkssvc_NetrUseEnum_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrUseEnum_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrUseEnum_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - *state->orig.out.info = *state->tmp.out.info; - *state->orig.out.entries_read = *state->tmp.out.entries_read; - if (state->orig.out.resume_handle && state->tmp.out.resume_handle) { - *state->orig.out.resume_handle = *state->tmp.out.resume_handle; - } - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrUseEnum_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrUseEnum_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrUseEnum_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrUseEnum(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - struct wkssvc_NetrUseEnumInfo *info /* [in,out] [ref] */, - uint32_t prefmaxlen /* [in] */, - uint32_t *entries_read /* [out] [ref] */, - uint32_t *resume_handle /* [in,out] [unique] */, - WERROR *werror) -{ - struct wkssvc_NetrUseEnum r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.info = info; - r.in.prefmaxlen = prefmaxlen; - r.in.resume_handle = resume_handle; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRUSEENUM, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - *info = *r.out.info; - *entries_read = *r.out.entries_read; - if (resume_handle && r.out.resume_handle) { - *resume_handle = *r.out.resume_handle; - } - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrMessageBufferSend_state { - struct wkssvc_NetrMessageBufferSend orig; - struct wkssvc_NetrMessageBufferSend tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrMessageBufferSend_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrMessageBufferSend_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_message_name /* [in] [ref,charset(UTF16)] */, - const char *_message_sender_name /* [in] [unique,charset(UTF16)] */, - uint8_t *_message_buffer /* [in] [ref,size_is(message_size)] */, - uint32_t _message_size /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrMessageBufferSend_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrMessageBufferSend_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.message_name = _message_name; - state->orig.in.message_sender_name = _message_sender_name; - state->orig.in.message_buffer = _message_buffer; - state->orig.in.message_size = _message_size; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRMESSAGEBUFFERSEND, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrMessageBufferSend_done, req); - return req; -} - -static void rpccli_wkssvc_NetrMessageBufferSend_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrMessageBufferSend_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrMessageBufferSend_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrMessageBufferSend_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrMessageBufferSend_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrMessageBufferSend_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrMessageBufferSend(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *message_name /* [in] [ref,charset(UTF16)] */, - const char *message_sender_name /* [in] [unique,charset(UTF16)] */, - uint8_t *message_buffer /* [in] [ref,size_is(message_size)] */, - uint32_t message_size /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrMessageBufferSend r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.message_name = message_name; - r.in.message_sender_name = message_sender_name; - r.in.message_buffer = message_buffer; - r.in.message_size = message_size; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRMESSAGEBUFFERSEND, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrWorkstationStatisticsGet_state { - struct wkssvc_NetrWorkstationStatisticsGet orig; - struct wkssvc_NetrWorkstationStatisticsGet tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrWorkstationStatisticsGet_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrWorkstationStatisticsGet_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_unknown2 /* [in] [unique,charset(UTF16)] */, - uint32_t _unknown3 /* [in] */, - uint32_t _unknown4 /* [in] */, - struct wkssvc_NetrWorkstationStatistics **_info /* [out] [ref] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrWorkstationStatisticsGet_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrWorkstationStatisticsGet_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.unknown2 = _unknown2; - state->orig.in.unknown3 = _unknown3; - state->orig.in.unknown4 = _unknown4; - - /* Out parameters */ - state->orig.out.info = _info; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetrWorkstationStatisticsGet_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRWORKSTATIONSTATISTICSGET, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrWorkstationStatisticsGet_done, req); - return req; -} - -static void rpccli_wkssvc_NetrWorkstationStatisticsGet_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrWorkstationStatisticsGet_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrWorkstationStatisticsGet_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - *state->orig.out.info = *state->tmp.out.info; - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrWorkstationStatisticsGet_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrWorkstationStatisticsGet_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrWorkstationStatisticsGet_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrWorkstationStatisticsGet(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *unknown2 /* [in] [unique,charset(UTF16)] */, - uint32_t unknown3 /* [in] */, - uint32_t unknown4 /* [in] */, - struct wkssvc_NetrWorkstationStatistics **info /* [out] [ref] */, - WERROR *werror) -{ - struct wkssvc_NetrWorkstationStatisticsGet r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.unknown2 = unknown2; - r.in.unknown3 = unknown3; - r.in.unknown4 = unknown4; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRWORKSTATIONSTATISTICSGET, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - *info = *r.out.info; - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrLogonDomainNameAdd_state { - struct wkssvc_NetrLogonDomainNameAdd orig; - struct wkssvc_NetrLogonDomainNameAdd tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrLogonDomainNameAdd_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrLogonDomainNameAdd_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_domain_name /* [in] [ref,charset(UTF16)] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrLogonDomainNameAdd_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrLogonDomainNameAdd_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.domain_name = _domain_name; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRLOGONDOMAINNAMEADD, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrLogonDomainNameAdd_done, req); - return req; -} - -static void rpccli_wkssvc_NetrLogonDomainNameAdd_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrLogonDomainNameAdd_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrLogonDomainNameAdd_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrLogonDomainNameAdd_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrLogonDomainNameAdd_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrLogonDomainNameAdd_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrLogonDomainNameAdd(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *domain_name /* [in] [ref,charset(UTF16)] */, - WERROR *werror) -{ - struct wkssvc_NetrLogonDomainNameAdd r; - NTSTATUS status; - - /* In parameters */ - r.in.domain_name = domain_name; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRLOGONDOMAINNAMEADD, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrLogonDomainNameDel_state { - struct wkssvc_NetrLogonDomainNameDel orig; - struct wkssvc_NetrLogonDomainNameDel tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrLogonDomainNameDel_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrLogonDomainNameDel_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_domain_name /* [in] [ref,charset(UTF16)] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrLogonDomainNameDel_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrLogonDomainNameDel_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.domain_name = _domain_name; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRLOGONDOMAINNAMEDEL, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrLogonDomainNameDel_done, req); - return req; -} - -static void rpccli_wkssvc_NetrLogonDomainNameDel_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrLogonDomainNameDel_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrLogonDomainNameDel_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrLogonDomainNameDel_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrLogonDomainNameDel_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrLogonDomainNameDel_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrLogonDomainNameDel(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *domain_name /* [in] [ref,charset(UTF16)] */, - WERROR *werror) -{ - struct wkssvc_NetrLogonDomainNameDel r; - NTSTATUS status; - - /* In parameters */ - r.in.domain_name = domain_name; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRLOGONDOMAINNAMEDEL, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrJoinDomain_state { - struct wkssvc_NetrJoinDomain orig; - struct wkssvc_NetrJoinDomain tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrJoinDomain_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrJoinDomain_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_domain_name /* [in] [ref,charset(UTF16)] */, - const char *_account_ou /* [in] [unique,charset(UTF16)] */, - const char *_Account /* [in] [unique,charset(UTF16)] */, - const char *_password /* [in] [unique,charset(UTF16)] */, - uint32_t _join_flags /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrJoinDomain_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrJoinDomain_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.domain_name = _domain_name; - state->orig.in.account_ou = _account_ou; - state->orig.in.Account = _Account; - state->orig.in.password = _password; - state->orig.in.join_flags = _join_flags; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRJOINDOMAIN, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrJoinDomain_done, req); - return req; -} - -static void rpccli_wkssvc_NetrJoinDomain_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrJoinDomain_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrJoinDomain_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrJoinDomain_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrJoinDomain_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrJoinDomain_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrJoinDomain(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *domain_name /* [in] [ref,charset(UTF16)] */, - const char *account_ou /* [in] [unique,charset(UTF16)] */, - const char *Account /* [in] [unique,charset(UTF16)] */, - const char *password /* [in] [unique,charset(UTF16)] */, - uint32_t join_flags /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrJoinDomain r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.domain_name = domain_name; - r.in.account_ou = account_ou; - r.in.Account = Account; - r.in.password = password; - r.in.join_flags = join_flags; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRJOINDOMAIN, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrUnjoinDomain_state { - struct wkssvc_NetrUnjoinDomain orig; - struct wkssvc_NetrUnjoinDomain tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrUnjoinDomain_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrUnjoinDomain_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_Account /* [in] [unique,charset(UTF16)] */, - const char *_password /* [in] [unique,charset(UTF16)] */, - uint32_t _unjoin_flags /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrUnjoinDomain_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrUnjoinDomain_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.Account = _Account; - state->orig.in.password = _password; - state->orig.in.unjoin_flags = _unjoin_flags; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRUNJOINDOMAIN, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrUnjoinDomain_done, req); - return req; -} - -static void rpccli_wkssvc_NetrUnjoinDomain_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrUnjoinDomain_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrUnjoinDomain_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrUnjoinDomain_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrUnjoinDomain_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrUnjoinDomain_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrUnjoinDomain(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *Account /* [in] [unique,charset(UTF16)] */, - const char *password /* [in] [unique,charset(UTF16)] */, - uint32_t unjoin_flags /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrUnjoinDomain r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.Account = Account; - r.in.password = password; - r.in.unjoin_flags = unjoin_flags; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRUNJOINDOMAIN, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrRenameMachineInDomain_state { - struct wkssvc_NetrRenameMachineInDomain orig; - struct wkssvc_NetrRenameMachineInDomain tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrRenameMachineInDomain_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrRenameMachineInDomain_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_NewMachineName /* [in] [unique,charset(UTF16)] */, - const char *_Account /* [in] [unique,charset(UTF16)] */, - const char *_password /* [in] [unique,charset(UTF16)] */, - uint32_t _RenameOptions /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrRenameMachineInDomain_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrRenameMachineInDomain_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.NewMachineName = _NewMachineName; - state->orig.in.Account = _Account; - state->orig.in.password = _password; - state->orig.in.RenameOptions = _RenameOptions; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRRENAMEMACHINEINDOMAIN, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrRenameMachineInDomain_done, req); - return req; -} - -static void rpccli_wkssvc_NetrRenameMachineInDomain_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrRenameMachineInDomain_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrRenameMachineInDomain_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrRenameMachineInDomain_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrRenameMachineInDomain_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrRenameMachineInDomain_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrRenameMachineInDomain(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *NewMachineName /* [in] [unique,charset(UTF16)] */, - const char *Account /* [in] [unique,charset(UTF16)] */, - const char *password /* [in] [unique,charset(UTF16)] */, - uint32_t RenameOptions /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrRenameMachineInDomain r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.NewMachineName = NewMachineName; - r.in.Account = Account; - r.in.password = password; - r.in.RenameOptions = RenameOptions; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRRENAMEMACHINEINDOMAIN, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrValidateName_state { - struct wkssvc_NetrValidateName orig; - struct wkssvc_NetrValidateName tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrValidateName_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrValidateName_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_name /* [in] [ref,charset(UTF16)] */, - const char *_Account /* [in] [unique,charset(UTF16)] */, - const char *_Password /* [in] [unique,charset(UTF16)] */, - enum wkssvc_NetValidateNameType _name_type /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrValidateName_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrValidateName_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.name = _name; - state->orig.in.Account = _Account; - state->orig.in.Password = _Password; - state->orig.in.name_type = _name_type; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRVALIDATENAME, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrValidateName_done, req); - return req; -} - -static void rpccli_wkssvc_NetrValidateName_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrValidateName_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrValidateName_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrValidateName_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrValidateName_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrValidateName_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrValidateName(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *name /* [in] [ref,charset(UTF16)] */, - const char *Account /* [in] [unique,charset(UTF16)] */, - const char *Password /* [in] [unique,charset(UTF16)] */, - enum wkssvc_NetValidateNameType name_type /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrValidateName r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.name = name; - r.in.Account = Account; - r.in.Password = Password; - r.in.name_type = name_type; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRVALIDATENAME, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrGetJoinInformation_state { - struct wkssvc_NetrGetJoinInformation orig; - struct wkssvc_NetrGetJoinInformation tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrGetJoinInformation_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrGetJoinInformation_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char **_name_buffer /* [in,out] [ref,charset(UTF16)] */, - enum wkssvc_NetJoinStatus *_name_type /* [out] [ref] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrGetJoinInformation_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrGetJoinInformation_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.name_buffer = _name_buffer; - - /* Out parameters */ - state->orig.out.name_buffer = _name_buffer; - state->orig.out.name_type = _name_type; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetrGetJoinInformation_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRGETJOININFORMATION, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrGetJoinInformation_done, req); - return req; -} - -static void rpccli_wkssvc_NetrGetJoinInformation_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrGetJoinInformation_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrGetJoinInformation_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - *state->orig.out.name_buffer = *state->tmp.out.name_buffer; - *state->orig.out.name_type = *state->tmp.out.name_type; - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrGetJoinInformation_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrGetJoinInformation_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrGetJoinInformation_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrGetJoinInformation(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char **name_buffer /* [in,out] [ref,charset(UTF16)] */, - enum wkssvc_NetJoinStatus *name_type /* [out] [ref] */, - WERROR *werror) -{ - struct wkssvc_NetrGetJoinInformation r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.name_buffer = name_buffer; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRGETJOININFORMATION, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - *name_buffer = *r.out.name_buffer; - *name_type = *r.out.name_type; - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrGetJoinableOus_state { - struct wkssvc_NetrGetJoinableOus orig; - struct wkssvc_NetrGetJoinableOus tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrGetJoinableOus_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrGetJoinableOus_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_domain_name /* [in] [ref,charset(UTF16)] */, - const char *_Account /* [in] [unique,charset(UTF16)] */, - const char *_unknown /* [in] [unique,charset(UTF16)] */, - uint32_t *_num_ous /* [in,out] [ref] */, - const char ***_ous /* [out] [ref,charset(UTF16),size_is(,*num_ous)] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrGetJoinableOus_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrGetJoinableOus_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.domain_name = _domain_name; - state->orig.in.Account = _Account; - state->orig.in.unknown = _unknown; - state->orig.in.num_ous = _num_ous; - - /* Out parameters */ - state->orig.out.num_ous = _num_ous; - state->orig.out.ous = _ous; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetrGetJoinableOus_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRGETJOINABLEOUS, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrGetJoinableOus_done, req); - return req; -} - -static void rpccli_wkssvc_NetrGetJoinableOus_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrGetJoinableOus_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrGetJoinableOus_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - *state->orig.out.num_ous = *state->tmp.out.num_ous; - *state->orig.out.ous = *state->tmp.out.ous; - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrGetJoinableOus_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrGetJoinableOus_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrGetJoinableOus_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrGetJoinableOus(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *domain_name /* [in] [ref,charset(UTF16)] */, - const char *Account /* [in] [unique,charset(UTF16)] */, - const char *unknown /* [in] [unique,charset(UTF16)] */, - uint32_t *num_ous /* [in,out] [ref] */, - const char ***ous /* [out] [ref,charset(UTF16),size_is(,*num_ous)] */, - WERROR *werror) -{ - struct wkssvc_NetrGetJoinableOus r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.domain_name = domain_name; - r.in.Account = Account; - r.in.unknown = unknown; - r.in.num_ous = num_ous; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRGETJOINABLEOUS, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - *num_ous = *r.out.num_ous; - *ous = *r.out.ous; - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrJoinDomain2_state { - struct wkssvc_NetrJoinDomain2 orig; - struct wkssvc_NetrJoinDomain2 tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrJoinDomain2_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrJoinDomain2_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_domain_name /* [in] [ref,charset(UTF16)] */, - const char *_account_ou /* [in] [unique,charset(UTF16)] */, - const char *_admin_account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *_encrypted_password /* [in] [unique] */, - uint32_t _join_flags /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrJoinDomain2_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrJoinDomain2_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.domain_name = _domain_name; - state->orig.in.account_ou = _account_ou; - state->orig.in.admin_account = _admin_account; - state->orig.in.encrypted_password = _encrypted_password; - state->orig.in.join_flags = _join_flags; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRJOINDOMAIN2, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrJoinDomain2_done, req); - return req; -} - -static void rpccli_wkssvc_NetrJoinDomain2_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrJoinDomain2_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrJoinDomain2_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrJoinDomain2_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrJoinDomain2_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrJoinDomain2_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrJoinDomain2(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *domain_name /* [in] [ref,charset(UTF16)] */, - const char *account_ou /* [in] [unique,charset(UTF16)] */, - const char *admin_account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *encrypted_password /* [in] [unique] */, - uint32_t join_flags /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrJoinDomain2 r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.domain_name = domain_name; - r.in.account_ou = account_ou; - r.in.admin_account = admin_account; - r.in.encrypted_password = encrypted_password; - r.in.join_flags = join_flags; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRJOINDOMAIN2, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrUnjoinDomain2_state { - struct wkssvc_NetrUnjoinDomain2 orig; - struct wkssvc_NetrUnjoinDomain2 tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrUnjoinDomain2_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrUnjoinDomain2_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *_encrypted_password /* [in] [unique] */, - uint32_t _unjoin_flags /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrUnjoinDomain2_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrUnjoinDomain2_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.account = _account; - state->orig.in.encrypted_password = _encrypted_password; - state->orig.in.unjoin_flags = _unjoin_flags; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRUNJOINDOMAIN2, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrUnjoinDomain2_done, req); - return req; -} - -static void rpccli_wkssvc_NetrUnjoinDomain2_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrUnjoinDomain2_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrUnjoinDomain2_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrUnjoinDomain2_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrUnjoinDomain2_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrUnjoinDomain2_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrUnjoinDomain2(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *encrypted_password /* [in] [unique] */, - uint32_t unjoin_flags /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrUnjoinDomain2 r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.account = account; - r.in.encrypted_password = encrypted_password; - r.in.unjoin_flags = unjoin_flags; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRUNJOINDOMAIN2, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrRenameMachineInDomain2_state { - struct wkssvc_NetrRenameMachineInDomain2 orig; - struct wkssvc_NetrRenameMachineInDomain2 tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrRenameMachineInDomain2_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrRenameMachineInDomain2_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_NewMachineName /* [in] [unique,charset(UTF16)] */, - const char *_Account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *_EncryptedPassword /* [in] [unique] */, - uint32_t _RenameOptions /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrRenameMachineInDomain2_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrRenameMachineInDomain2_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.NewMachineName = _NewMachineName; - state->orig.in.Account = _Account; - state->orig.in.EncryptedPassword = _EncryptedPassword; - state->orig.in.RenameOptions = _RenameOptions; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRRENAMEMACHINEINDOMAIN2, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrRenameMachineInDomain2_done, req); - return req; -} - -static void rpccli_wkssvc_NetrRenameMachineInDomain2_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrRenameMachineInDomain2_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrRenameMachineInDomain2_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrRenameMachineInDomain2_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrRenameMachineInDomain2_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrRenameMachineInDomain2_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrRenameMachineInDomain2(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *NewMachineName /* [in] [unique,charset(UTF16)] */, - const char *Account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *EncryptedPassword /* [in] [unique] */, - uint32_t RenameOptions /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrRenameMachineInDomain2 r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.NewMachineName = NewMachineName; - r.in.Account = Account; - r.in.EncryptedPassword = EncryptedPassword; - r.in.RenameOptions = RenameOptions; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRRENAMEMACHINEINDOMAIN2, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrValidateName2_state { - struct wkssvc_NetrValidateName2 orig; - struct wkssvc_NetrValidateName2 tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrValidateName2_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrValidateName2_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_name /* [in] [ref,charset(UTF16)] */, - const char *_Account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *_EncryptedPassword /* [in] [unique] */, - enum wkssvc_NetValidateNameType _name_type /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrValidateName2_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrValidateName2_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.name = _name; - state->orig.in.Account = _Account; - state->orig.in.EncryptedPassword = _EncryptedPassword; - state->orig.in.name_type = _name_type; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRVALIDATENAME2, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrValidateName2_done, req); - return req; -} - -static void rpccli_wkssvc_NetrValidateName2_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrValidateName2_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrValidateName2_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrValidateName2_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrValidateName2_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrValidateName2_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrValidateName2(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *name /* [in] [ref,charset(UTF16)] */, - const char *Account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *EncryptedPassword /* [in] [unique] */, - enum wkssvc_NetValidateNameType name_type /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrValidateName2 r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.name = name; - r.in.Account = Account; - r.in.EncryptedPassword = EncryptedPassword; - r.in.name_type = name_type; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRVALIDATENAME2, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrGetJoinableOus2_state { - struct wkssvc_NetrGetJoinableOus2 orig; - struct wkssvc_NetrGetJoinableOus2 tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrGetJoinableOus2_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrGetJoinableOus2_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_domain_name /* [in] [ref,charset(UTF16)] */, - const char *_Account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *_EncryptedPassword /* [in] [unique] */, - uint32_t *_num_ous /* [in,out] [ref] */, - const char ***_ous /* [out] [ref,charset(UTF16),size_is(,*num_ous)] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrGetJoinableOus2_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrGetJoinableOus2_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.domain_name = _domain_name; - state->orig.in.Account = _Account; - state->orig.in.EncryptedPassword = _EncryptedPassword; - state->orig.in.num_ous = _num_ous; - - /* Out parameters */ - state->orig.out.num_ous = _num_ous; - state->orig.out.ous = _ous; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetrGetJoinableOus2_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRGETJOINABLEOUS2, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrGetJoinableOus2_done, req); - return req; -} - -static void rpccli_wkssvc_NetrGetJoinableOus2_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrGetJoinableOus2_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrGetJoinableOus2_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - *state->orig.out.num_ous = *state->tmp.out.num_ous; - *state->orig.out.ous = *state->tmp.out.ous; - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrGetJoinableOus2_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrGetJoinableOus2_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrGetJoinableOus2_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrGetJoinableOus2(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *domain_name /* [in] [ref,charset(UTF16)] */, - const char *Account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *EncryptedPassword /* [in] [unique] */, - uint32_t *num_ous /* [in,out] [ref] */, - const char ***ous /* [out] [ref,charset(UTF16),size_is(,*num_ous)] */, - WERROR *werror) -{ - struct wkssvc_NetrGetJoinableOus2 r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.domain_name = domain_name; - r.in.Account = Account; - r.in.EncryptedPassword = EncryptedPassword; - r.in.num_ous = num_ous; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRGETJOINABLEOUS2, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - *num_ous = *r.out.num_ous; - *ous = *r.out.ous; - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrAddAlternateComputerName_state { - struct wkssvc_NetrAddAlternateComputerName orig; - struct wkssvc_NetrAddAlternateComputerName tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrAddAlternateComputerName_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrAddAlternateComputerName_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_NewAlternateMachineName /* [in] [unique,charset(UTF16)] */, - const char *_Account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *_EncryptedPassword /* [in] [unique] */, - uint32_t _Reserved /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrAddAlternateComputerName_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrAddAlternateComputerName_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.NewAlternateMachineName = _NewAlternateMachineName; - state->orig.in.Account = _Account; - state->orig.in.EncryptedPassword = _EncryptedPassword; - state->orig.in.Reserved = _Reserved; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRADDALTERNATECOMPUTERNAME, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrAddAlternateComputerName_done, req); - return req; -} - -static void rpccli_wkssvc_NetrAddAlternateComputerName_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrAddAlternateComputerName_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrAddAlternateComputerName_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrAddAlternateComputerName_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrAddAlternateComputerName_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrAddAlternateComputerName_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrAddAlternateComputerName(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *NewAlternateMachineName /* [in] [unique,charset(UTF16)] */, - const char *Account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *EncryptedPassword /* [in] [unique] */, - uint32_t Reserved /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrAddAlternateComputerName r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.NewAlternateMachineName = NewAlternateMachineName; - r.in.Account = Account; - r.in.EncryptedPassword = EncryptedPassword; - r.in.Reserved = Reserved; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRADDALTERNATECOMPUTERNAME, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrRemoveAlternateComputerName_state { - struct wkssvc_NetrRemoveAlternateComputerName orig; - struct wkssvc_NetrRemoveAlternateComputerName tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrRemoveAlternateComputerName_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrRemoveAlternateComputerName_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_AlternateMachineNameToRemove /* [in] [unique,charset(UTF16)] */, - const char *_Account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *_EncryptedPassword /* [in] [unique] */, - uint32_t _Reserved /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrRemoveAlternateComputerName_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrRemoveAlternateComputerName_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.AlternateMachineNameToRemove = _AlternateMachineNameToRemove; - state->orig.in.Account = _Account; - state->orig.in.EncryptedPassword = _EncryptedPassword; - state->orig.in.Reserved = _Reserved; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRREMOVEALTERNATECOMPUTERNAME, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrRemoveAlternateComputerName_done, req); - return req; -} - -static void rpccli_wkssvc_NetrRemoveAlternateComputerName_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrRemoveAlternateComputerName_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrRemoveAlternateComputerName_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrRemoveAlternateComputerName_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrRemoveAlternateComputerName_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrRemoveAlternateComputerName_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrRemoveAlternateComputerName(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *AlternateMachineNameToRemove /* [in] [unique,charset(UTF16)] */, - const char *Account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *EncryptedPassword /* [in] [unique] */, - uint32_t Reserved /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrRemoveAlternateComputerName r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.AlternateMachineNameToRemove = AlternateMachineNameToRemove; - r.in.Account = Account; - r.in.EncryptedPassword = EncryptedPassword; - r.in.Reserved = Reserved; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRREMOVEALTERNATECOMPUTERNAME, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrSetPrimaryComputername_state { - struct wkssvc_NetrSetPrimaryComputername orig; - struct wkssvc_NetrSetPrimaryComputername tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrSetPrimaryComputername_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrSetPrimaryComputername_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - const char *_primary_name /* [in] [unique,charset(UTF16)] */, - const char *_Account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *_EncryptedPassword /* [in] [unique] */, - uint32_t _Reserved /* [in] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrSetPrimaryComputername_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrSetPrimaryComputername_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.primary_name = _primary_name; - state->orig.in.Account = _Account; - state->orig.in.EncryptedPassword = _EncryptedPassword; - state->orig.in.Reserved = _Reserved; - - /* Out parameters */ - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRSETPRIMARYCOMPUTERNAME, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrSetPrimaryComputername_done, req); - return req; -} - -static void rpccli_wkssvc_NetrSetPrimaryComputername_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrSetPrimaryComputername_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrSetPrimaryComputername_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrSetPrimaryComputername_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrSetPrimaryComputername_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrSetPrimaryComputername_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrSetPrimaryComputername(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - const char *primary_name /* [in] [unique,charset(UTF16)] */, - const char *Account /* [in] [unique,charset(UTF16)] */, - struct wkssvc_PasswordBuffer *EncryptedPassword /* [in] [unique] */, - uint32_t Reserved /* [in] */, - WERROR *werror) -{ - struct wkssvc_NetrSetPrimaryComputername r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.primary_name = primary_name; - r.in.Account = Account; - r.in.EncryptedPassword = EncryptedPassword; - r.in.Reserved = Reserved; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRSETPRIMARYCOMPUTERNAME, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - -struct rpccli_wkssvc_NetrEnumerateComputerNames_state { - struct wkssvc_NetrEnumerateComputerNames orig; - struct wkssvc_NetrEnumerateComputerNames tmp; - TALLOC_CTX *out_mem_ctx; - NTSTATUS (*dispatch_recv)(struct tevent_req *req, TALLOC_CTX *mem_ctx); -}; - -static void rpccli_wkssvc_NetrEnumerateComputerNames_done(struct tevent_req *subreq); - -struct tevent_req *rpccli_wkssvc_NetrEnumerateComputerNames_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct rpc_pipe_client *cli, - const char *_server_name /* [in] [unique,charset(UTF16)] */, - enum wkssvc_ComputerNameType _name_type /* [in] */, - uint32_t _Reserved /* [in] */, - struct wkssvc_ComputerNamesCtr **_ctr /* [out] [ref] */) -{ - struct tevent_req *req; - struct rpccli_wkssvc_NetrEnumerateComputerNames_state *state; - struct tevent_req *subreq; - - req = tevent_req_create(mem_ctx, &state, - struct rpccli_wkssvc_NetrEnumerateComputerNames_state); - if (req == NULL) { - return NULL; - } - state->out_mem_ctx = NULL; - state->dispatch_recv = cli->dispatch_recv; - - /* In parameters */ - state->orig.in.server_name = _server_name; - state->orig.in.name_type = _name_type; - state->orig.in.Reserved = _Reserved; - - /* Out parameters */ - state->orig.out.ctr = _ctr; - - /* Result */ - ZERO_STRUCT(state->orig.out.result); - - state->out_mem_ctx = talloc_named_const(state, 0, - "rpccli_wkssvc_NetrEnumerateComputerNames_out_memory"); - if (tevent_req_nomem(state->out_mem_ctx, req)) { - return tevent_req_post(req, ev); - } - - /* make a temporary copy, that we pass to the dispatch function */ - state->tmp = state->orig; - - subreq = cli->dispatch_send(state, ev, cli, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRENUMERATECOMPUTERNAMES, - &state->tmp); - if (tevent_req_nomem(subreq, req)) { - return tevent_req_post(req, ev); - } - tevent_req_set_callback(subreq, rpccli_wkssvc_NetrEnumerateComputerNames_done, req); - return req; -} - -static void rpccli_wkssvc_NetrEnumerateComputerNames_done(struct tevent_req *subreq) -{ - struct tevent_req *req = tevent_req_callback_data( - subreq, struct tevent_req); - struct rpccli_wkssvc_NetrEnumerateComputerNames_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrEnumerateComputerNames_state); - NTSTATUS status; - TALLOC_CTX *mem_ctx; - - if (state->out_mem_ctx) { - mem_ctx = state->out_mem_ctx; - } else { - mem_ctx = state; - } - - status = state->dispatch_recv(subreq, mem_ctx); - TALLOC_FREE(subreq); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - return; - } - - /* Copy out parameters */ - *state->orig.out.ctr = *state->tmp.out.ctr; - - /* Copy result */ - state->orig.out.result = state->tmp.out.result; - - /* Reset temporary structure */ - ZERO_STRUCT(state->tmp); - - tevent_req_done(req); -} - -NTSTATUS rpccli_wkssvc_NetrEnumerateComputerNames_recv(struct tevent_req *req, - TALLOC_CTX *mem_ctx, - WERROR *result) -{ - struct rpccli_wkssvc_NetrEnumerateComputerNames_state *state = tevent_req_data( - req, struct rpccli_wkssvc_NetrEnumerateComputerNames_state); - NTSTATUS status; - - if (tevent_req_is_nterror(req, &status)) { - tevent_req_received(req); - return status; - } - - /* Steal possbile out parameters to the callers context */ - talloc_steal(mem_ctx, state->out_mem_ctx); - - /* Return result */ - *result = state->orig.out.result; - - tevent_req_received(req); - return NT_STATUS_OK; -} - -NTSTATUS rpccli_wkssvc_NetrEnumerateComputerNames(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *server_name /* [in] [unique,charset(UTF16)] */, - enum wkssvc_ComputerNameType name_type /* [in] */, - uint32_t Reserved /* [in] */, - struct wkssvc_ComputerNamesCtr **ctr /* [out] [ref] */, - WERROR *werror) -{ - struct wkssvc_NetrEnumerateComputerNames r; - NTSTATUS status; - - /* In parameters */ - r.in.server_name = server_name; - r.in.name_type = name_type; - r.in.Reserved = Reserved; - - status = cli->dispatch(cli, - mem_ctx, - &ndr_table_wkssvc, - NDR_WKSSVC_NETRENUMERATECOMPUTERNAMES, - &r); - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - /* Return variables */ - *ctr = *r.out.ctr; - - /* Return result */ - if (werror) { - *werror = r.out.result; - } - - return werror_to_ntstatus(r.out.result); -} - |