From c69f2c4de992104e83a6e945835c47e5b919c04d Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 8 Jul 2011 11:34:24 +0200 Subject: s3-librpc: Pass messaging context to dcerpc register functions. --- source3/librpc/rpc/dcerpc_ep.c | 11 +++++++++-- source3/librpc/rpc/dcerpc_ep.h | 5 ++++- source3/rpc_server/rpc_ep_setup.c | 1 + 3 files changed, 14 insertions(+), 3 deletions(-) (limited to 'source3') diff --git a/source3/librpc/rpc/dcerpc_ep.c b/source3/librpc/rpc/dcerpc_ep.c index 7341bc4b76..14d475fbef 100644 --- a/source3/librpc/rpc/dcerpc_ep.c +++ b/source3/librpc/rpc/dcerpc_ep.c @@ -134,6 +134,7 @@ done: } static NTSTATUS ep_register(TALLOC_CTX *mem_ctx, + struct messaging_context *msg_ctx, const struct ndr_interface_table *iface, const struct dcerpc_binding_vector *bind_vec, const struct GUID *object_guid, @@ -187,7 +188,7 @@ static NTSTATUS ep_register(TALLOC_CTX *mem_ctx, &ndr_table_epmapper, local, get_session_info_system(), - server_messaging_context(), + msg_ctx, &h); if (!NT_STATUS_IS_OK(status)) { DEBUG(1, ("dcerpc_ep_register: Could not connect to " @@ -309,6 +310,7 @@ done: } NTSTATUS dcerpc_ep_register(TALLOC_CTX *mem_ctx, + struct messaging_context *msg_ctx, const struct ndr_interface_table *iface, const struct dcerpc_binding_vector *bind_vec, const struct GUID *object_guid, @@ -316,6 +318,7 @@ NTSTATUS dcerpc_ep_register(TALLOC_CTX *mem_ctx, struct dcerpc_binding_handle **ph) { return ep_register(mem_ctx, + msg_ctx, iface, bind_vec, object_guid, @@ -326,6 +329,7 @@ NTSTATUS dcerpc_ep_register(TALLOC_CTX *mem_ctx, } NTSTATUS dcerpc_ep_register_noreplace(TALLOC_CTX *mem_ctx, + struct messaging_context *msg_ctx, const struct ndr_interface_table *iface, const struct dcerpc_binding_vector *bind_vec, const struct GUID *object_guid, @@ -333,6 +337,7 @@ NTSTATUS dcerpc_ep_register_noreplace(TALLOC_CTX *mem_ctx, struct dcerpc_binding_handle **ph) { return ep_register(mem_ctx, + msg_ctx, iface, bind_vec, object_guid, @@ -342,11 +347,13 @@ NTSTATUS dcerpc_ep_register_noreplace(TALLOC_CTX *mem_ctx, ph); } -NTSTATUS dcerpc_ep_unregister(const struct ndr_interface_table *iface, +NTSTATUS dcerpc_ep_unregister(struct messaging_context *msg_ctx, + const struct ndr_interface_table *iface, const struct dcerpc_binding_vector *bind_vec, const struct GUID *object_guid) { return ep_register(NULL, + msg_ctx, iface, bind_vec, object_guid, diff --git a/source3/librpc/rpc/dcerpc_ep.h b/source3/librpc/rpc/dcerpc_ep.h index 57b1d27440..226d402986 100644 --- a/source3/librpc/rpc/dcerpc_ep.h +++ b/source3/librpc/rpc/dcerpc_ep.h @@ -64,6 +64,7 @@ NTSTATUS dcerpc_binding_vector_create(TALLOC_CTX *mem_ctx, * @return An NTSTATUS error code. */ NTSTATUS dcerpc_ep_register(TALLOC_CTX *mem_ctx, + struct messaging_context *msg_ctx, const struct ndr_interface_table *iface, const struct dcerpc_binding_vector *bind_vec, const struct GUID *object_guid, @@ -71,13 +72,15 @@ NTSTATUS dcerpc_ep_register(TALLOC_CTX *mem_ctx, struct dcerpc_binding_handle **ph); NTSTATUS dcerpc_ep_register_noreplace(TALLOC_CTX *mem_ctx, + struct messaging_context *msg_ctx, const struct ndr_interface_table *iface, const struct dcerpc_binding_vector *bind_vec, const struct GUID *object_guid, const char *annotation, struct dcerpc_binding_handle **ph); -NTSTATUS dcerpc_ep_unregister(const struct ndr_interface_table *iface, +NTSTATUS dcerpc_ep_unregister(struct messaging_context *msg_ctx, + const struct ndr_interface_table *iface, const struct dcerpc_binding_vector *bind_vec, const struct GUID *object_guid); diff --git a/source3/rpc_server/rpc_ep_setup.c b/source3/rpc_server/rpc_ep_setup.c index 7dc23aae89..7f40dda919 100644 --- a/source3/rpc_server/rpc_ep_setup.c +++ b/source3/rpc_server/rpc_ep_setup.c @@ -271,6 +271,7 @@ static NTSTATUS rpc_ep_setup_try_register(TALLOC_CTX *mem_ctx, } status = dcerpc_ep_register(mem_ctx, + msg_ctx, iface, v, &iface->syntax_id.uuid, -- cgit