diff options
author | Stefan Metzmacher <metze@samba.org> | 2011-03-13 16:24:55 +0100 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2011-03-13 17:46:02 +0100 |
commit | c1a2fd1cd15c55e73df6ab89db77aa2e7f83c346 (patch) | |
tree | b18ba2180aeef1187196cf6365288567db85e5cf /source4 | |
parent | 81063f9a268e959edbb796ca72ba35da70e838c2 (diff) | |
download | samba-c1a2fd1cd15c55e73df6ab89db77aa2e7f83c346.tar.gz samba-c1a2fd1cd15c55e73df6ab89db77aa2e7f83c346.tar.bz2 samba-c1a2fd1cd15c55e73df6ab89db77aa2e7f83c346.zip |
s4:librpc/rpc: finaly make struct rpc_request and enum rpc_request_state private
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Sun Mar 13 17:46:02 CET 2011 on sn-devel-104
Diffstat (limited to 'source4')
-rw-r--r-- | source4/librpc/rpc/dcerpc.c | 43 | ||||
-rw-r--r-- | source4/librpc/rpc/dcerpc.h | 44 |
2 files changed, 44 insertions, 43 deletions
diff --git a/source4/librpc/rpc/dcerpc.c b/source4/librpc/rpc/dcerpc.c index bb7c4c536d..cc72866866 100644 --- a/source4/librpc/rpc/dcerpc.c +++ b/source4/librpc/rpc/dcerpc.c @@ -33,6 +33,49 @@ #include "lib/util/tevent_ntstatus.h" #include "librpc/rpc/rpc_common.h" +enum rpc_request_state { + RPC_REQUEST_QUEUED, + RPC_REQUEST_PENDING, + RPC_REQUEST_DONE +}; + +/* + handle for an async dcerpc request +*/ +struct rpc_request { + struct rpc_request *next, *prev; + struct dcerpc_pipe *p; + NTSTATUS status; + uint32_t call_id; + enum rpc_request_state state; + DATA_BLOB payload; + uint32_t flags; + uint32_t fault_code; + + /* this is used to distinguish bind and alter_context requests + from normal requests */ + void (*recv_handler)(struct rpc_request *conn, + DATA_BLOB *blob, struct ncacn_packet *pkt); + + const struct GUID *object; + uint16_t opnum; + DATA_BLOB request_data; + bool ignore_timeout; + + /* use by the ndr level async recv call */ + struct { + const struct ndr_interface_table *table; + uint32_t opnum; + void *struct_ptr; + TALLOC_CTX *mem_ctx; + } ndr; + + struct { + void (*callback)(struct rpc_request *); + void *private_data; + } async; +}; + _PUBLIC_ NTSTATUS dcerpc_init(struct loadparm_context *lp_ctx) { return gensec_init(lp_ctx); diff --git a/source4/librpc/rpc/dcerpc.h b/source4/librpc/rpc/dcerpc.h index a6ac8c37eb..22f4b1e594 100644 --- a/source4/librpc/rpc/dcerpc.h +++ b/source4/librpc/rpc/dcerpc.h @@ -53,6 +53,7 @@ struct dcecli_security { /* this holds the information that is not specific to a particular rpc context_id */ +struct rpc_request; struct dcecli_connection { uint32_t call_id; uint32_t srv_max_xmit_frag; @@ -190,49 +191,6 @@ struct dcerpc_pipe_connect { }; -enum rpc_request_state { - RPC_REQUEST_QUEUED, - RPC_REQUEST_PENDING, - RPC_REQUEST_DONE -}; - -/* - handle for an async dcerpc request -*/ -struct rpc_request { - struct rpc_request *next, *prev; - struct dcerpc_pipe *p; - NTSTATUS status; - uint32_t call_id; - enum rpc_request_state state; - DATA_BLOB payload; - uint32_t flags; - uint32_t fault_code; - - /* this is used to distinguish bind and alter_context requests - from normal requests */ - void (*recv_handler)(struct rpc_request *conn, - DATA_BLOB *blob, struct ncacn_packet *pkt); - - const struct GUID *object; - uint16_t opnum; - DATA_BLOB request_data; - bool ignore_timeout; - - /* use by the ndr level async recv call */ - struct { - const struct ndr_interface_table *table; - uint32_t opnum; - void *struct_ptr; - TALLOC_CTX *mem_ctx; - } ndr; - - struct { - void (*callback)(struct rpc_request *); - void *private_data; - } async; -}; - struct epm_tower; struct epm_floor; |