diff options
author | Samuel Cabrero <scabrero@samba.org> | 2019-10-03 17:26:54 +0200 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2019-10-18 16:07:37 +0000 |
commit | b0ecc8ef55dc7e8c7ce9f7f3ca325358f62debfb (patch) | |
tree | 9b794be5b3a7d46c7c744f457ac80623d0edd5f8 /source4 | |
parent | 6fe23fa071d2dc6e348b175b514c99a6ce82b6f4 (diff) | |
download | samba-b0ecc8ef55dc7e8c7ce9f7f3ca325358f62debfb.tar.gz |
s4:rpc_server: inline the dcesrv_assoc_group_find function
Signed-off-by: Samuel Cabrero <scabrero@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Diffstat (limited to 'source4')
-rw-r--r-- | source4/rpc_server/dcerpc_server.c | 23 |
1 files changed, 6 insertions, 17 deletions
diff --git a/source4/rpc_server/dcerpc_server.c b/source4/rpc_server/dcerpc_server.c index fc8979deaa4..39a25241316 100644 --- a/source4/rpc_server/dcerpc_server.c +++ b/source4/rpc_server/dcerpc_server.c @@ -47,21 +47,6 @@ static NTSTATUS dcesrv_negotiate_contexts(struct dcesrv_call_state *call, struct dcerpc_ack_ctx *ack_ctx_list); /* - find an association group given a assoc_group_id - */ -static struct dcesrv_assoc_group *dcesrv_assoc_group_find(struct dcesrv_context *dce_ctx, - uint32_t id) -{ - void *id_ptr; - - id_ptr = idr_find(dce_ctx->assoc_groups_idr, id); - if (id_ptr == NULL) { - return NULL; - } - return talloc_get_type_abort(id_ptr, struct dcesrv_assoc_group); -} - -/* take a reference to an existing association group */ static struct dcesrv_assoc_group *dcesrv_assoc_group_reference(struct dcesrv_connection *conn, @@ -71,12 +56,16 @@ static struct dcesrv_assoc_group *dcesrv_assoc_group_reference(struct dcesrv_con enum dcerpc_transport_t transport = dcerpc_binding_get_transport(endpoint->ep_description); struct dcesrv_assoc_group *assoc_group; + void *id_ptr = NULL; - assoc_group = dcesrv_assoc_group_find(conn->dce_ctx, id); - if (assoc_group == NULL) { + /* find an association group given a assoc_group_id */ + id_ptr = idr_find(conn->dce_ctx->assoc_groups_idr, id); + if (id_ptr == NULL) { DBG_NOTICE("Failed to find assoc_group 0x%08x\n", id); return NULL; } + assoc_group = talloc_get_type_abort(id_ptr, struct dcesrv_assoc_group); + if (assoc_group->transport != transport) { const char *at = derpc_transport_string_by_transport( |