#define DCERPC_REQUEST_TIMEOUT 60
-/* dcerpc pipe flags */
-#define DCERPC_DEBUG_PRINT_IN (1<<0)
-#define DCERPC_DEBUG_PRINT_OUT (1<<1)
-#define DCERPC_DEBUG_PRINT_BOTH (DCERPC_DEBUG_PRINT_IN | DCERPC_DEBUG_PRINT_OUT)
-
-#define DCERPC_DEBUG_VALIDATE_IN (1<<2)
-#define DCERPC_DEBUG_VALIDATE_OUT (1<<3)
-#define DCERPC_DEBUG_VALIDATE_BOTH (DCERPC_DEBUG_VALIDATE_IN | DCERPC_DEBUG_VALIDATE_OUT)
-
-#define DCERPC_CONNECT (1<<4)
-#define DCERPC_SIGN (1<<5)
-#define DCERPC_SEAL (1<<6)
-
-#define DCERPC_PUSH_BIGENDIAN (1<<7)
-#define DCERPC_PULL_BIGENDIAN (1<<8)
-
-#define DCERPC_SCHANNEL (1<<9)
-
-#define DCERPC_ANON_FALLBACK (1<<10)
-
-/* use a 128 bit session key */
-#define DCERPC_SCHANNEL_128 (1<<12)
-
-/* check incoming pad bytes */
-#define DCERPC_DEBUG_PAD_CHECK (1<<13)
-
-/* set LIBNDR_FLAG_REF_ALLOC flag when decoding NDR */
-#define DCERPC_NDR_REF_ALLOC (1<<14)
-
-#define DCERPC_AUTH_OPTIONS (DCERPC_SEAL|DCERPC_SIGN|DCERPC_SCHANNEL|DCERPC_AUTH_SPNEGO|DCERPC_AUTH_KRB5|DCERPC_AUTH_NTLM)
-
-/* select spnego auth */
-#define DCERPC_AUTH_SPNEGO (1<<15)
-
-/* select krb5 auth */
-#define DCERPC_AUTH_KRB5 (1<<16)
-
-#define DCERPC_SMB2 (1<<17)
-
-/* select NTLM auth */
-#define DCERPC_AUTH_NTLM (1<<18)
-
-/* this triggers the DCERPC_PFC_FLAG_CONC_MPX flag in the bind request */
-#define DCERPC_CONCURRENT_MULTIPLEX (1<<19)
-
-/* this triggers the DCERPC_PFC_FLAG_SUPPORT_HEADER_SIGN flag in the bind request */
-#define DCERPC_HEADER_SIGNING (1<<20)
-
-/* use NDR64 transport */
-#define DCERPC_NDR64 (1<<21)
-
-/* this describes a binding to a particular transport/pipe */
-struct dcerpc_binding {
- enum dcerpc_transport_t transport;
- struct ndr_syntax_id object;
- const char *host;
- const char *target_hostname;
- const char *endpoint;
- const char **options;
- uint32_t flags;
- uint32_t assoc_group_id;
-};
-#if 0
-struct dcerpc_pdu {
- void *bla;
-};
-
-struct dcerpc_transport_connection {
- enum dcerpc_transport_t transport;
- struct tstream_context *stream;
- uint32_t call_id;
- uint32_t srv_max_xmit_frag;
- uint32_t srv_max_recv_frag;
- uint32_t flags;
- struct smb_iconv_convenience *iconv_convenience;
- struct tevent_queue *send_queue;
-};
-
-struct dcerpc_auth_context {
- uint32_t context_id;
- uint8_t auth_level;
- struct gensec_context *gensec;
-};
-
-struct dcerpc_syntax_context {
- uint32_t context_id;
- struct ndr_syntax_id object;
- struct ndr_syntax_id interface_id;
- uint32_t ndr_flags;
- struct ndr_table *table;
-};
-
-struct dcerpc_established_binding {
- struct dcerpc_transport_connection *transport;
- struct dcerpc_auth_context *auth;
- struct dcerpc_syntax_context *syntax;
-};
-
-struct tevent_req *dcerpc_request_send(TALLOC_CTX *mem_ctx,
- struct tevent_context *ev,
- struct dcerpc_transport_connection *conn,
- struct dcerpc_auth_context *auth,
- struct dcerpc_syntax_context *syntax,
- uint32_t opnum;
- void *r);
-NTSTATUS dcerpc_request_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx);
-
-NTSTATUS dcerpc_foo(struct dcerpc_established_binding *binding,
- int param1, /* in */
- int *val, /* ref, out */
- WERROR *result);
-#endif
-
struct dcerpc_pipe_connect {
struct dcerpc_pipe *pipe;
struct dcerpc_binding *binding;