summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--source3/librpc/rpc/dcerpc_ep.c11
-rw-r--r--source3/librpc/rpc/dcerpc_ep.h5
-rw-r--r--source3/rpc_server/rpc_ep_setup.c1
3 files changed, 14 insertions, 3 deletions
diff --git a/source3/librpc/rpc/dcerpc_ep.c b/source3/librpc/rpc/dcerpc_ep.c
index 7341bc4b76a..14d475fbef4 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 57b1d274408..226d402986e 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 7dc23aae89d..7f40dda9197 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,