STEP01x: dcerpc_call_entry_point_vector
authorStefan Metzmacher <metze@samba.org>
Tue, 18 Mar 2014 21:54:14 +0000 (22:54 +0100)
committerStefan Metzmacher <metze@samba.org>
Tue, 4 Jun 2019 10:56:53 +0000 (12:56 +0200)
librpc/rpc/dcerpc_connection.c

index 065802e15168a1b3b0c564b7cdaae4218e21a987..8bfbee2697e38967bb2a9bb58c2edbdc6734eadd 100644 (file)
@@ -119,6 +119,18 @@ struct dcerpc_call {
        } incoming;
 };
 
+struct dcerpc_object_handle {
+
+};
+
+struct dcerpc_context_handle {
+       struct dcerpc_association *assoc;
+
+       struct policy_handle wire;
+
+       void *ptr;
+};
+
 struct dcerpc_server_auth_info;
 
 struct dcerpc_server {
@@ -135,18 +147,33 @@ struct dcerpc_server_auth_info {
        struct cli_credentials *creds;
 };
 
+struct dcerpc_server_manager {
+       const struct ndr_interface_table *table;
+
+};
+
 struct dcerpc_server_endpoint {
        struct dcerpc_server_endpoint *prev, *next;
 
        const struct dcerpc_binding *binding;
 };
 
-struct dcerpc_context_handle {
-       struct dcerpc_association *assoc;
+typedef struct tevent_req *(*dcerpc_call_entry_point_send_fn_t)(TALLOC_CTX *mem_ctx,
+                                                       struct tevent_context *ev,
+                                                       struct dcerpc_call_handle *call,
+                                                       void *r);
+typedef NTSTATUS *(dcerpc_call_entry_point_recv_fn_t)(struct tevent_req *req);
 
-       struct policy_handle wire;
+struct dcerpc_call_entry_point_fns {
+       dcerpc_call_entry_point_send_fn_t fn_send;
+       dcerpc_call_entry_point_recv_fn_t fn_recv;
+};
 
-       void *ptr;
+struct dcerpc_call_entry_point_vector {
+       const char *name;
+       const struct ndr_interface_table *table;
+       uint32_t num_fns;
+       const struct dcerpc_call_entry_point_fns *fns;
 };
 
 struct dcerpc_association *dcerpc_association_create(TALLOC_CTX *mem_ctx,