21#ifndef __WINE_RPC_BINDING_H
22#define __WINE_RPC_BINDING_H
151#define RPCRT4_strdupA(x) RPCRT4_strndupA((x),-1)
152#define RPCRT4_strdupW(x) RPCRT4_strndupW((x),-1)
185 return Connection->
ops->name;
202 return Connection->
ops->close(Connection);
207 connection->
ops->close_read(connection);
212 Connection->
ops->cancel_call(Connection);
217 return old_conn->
ops->handoff(old_conn, new_conn);
222 return Connection->
ops->is_authorized(Connection);
227 unsigned int in_len,
unsigned char *
out_buffer,
unsigned int *out_len)
234 RpcPktHdr *
hdr,
unsigned int hdr_size,
unsigned char *stub_data,
236 unsigned char *auth_value,
unsigned int auth_value_size)
238 return conn->
ops->secure_packet(conn,
dir,
hdr, hdr_size, stub_data, stub_data_size, auth_hdr, auth_value, auth_value_size);
244 return conn->
ops->impersonate_client(conn);
250 return conn->
ops->revert_to_self(conn);
257 return conn->
ops->inquire_auth_client(conn, privs, server_princ_name, authn_level, authn_svc, authz_svc,
flags);
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
static unsigned char * in_buffer
static HANDLE PIO_APC_ROUTINE PVOID PIO_STATUS_BLOCK ULONG PVOID ULONG PVOID out_buffer
RPC_STATUS RPCRT4_ResolveBinding(RpcBinding *Binding, LPCSTR Endpoint) DECLSPEC_HIDDEN
static const char * rpcrt4_conn_get_name(const RpcConnection *Connection)
static RPC_STATUS rpcrt4_conn_secure_packet(RpcConnection *conn, enum secure_packet_direction dir, RpcPktHdr *hdr, unsigned int hdr_size, unsigned char *stub_data, unsigned int stub_data_size, RpcAuthVerifier *auth_hdr, unsigned char *auth_value, unsigned int auth_value_size)
LPSTR RPCRT4_strdupWtoA(LPCWSTR src) DECLSPEC_HIDDEN
static RPC_STATUS rpcrt4_conn_handoff(RpcConnection *old_conn, RpcConnection *new_conn)
RPC_STATUS RpcTransport_ParseTopOfTower(const unsigned char *tower_data, size_t tower_size, char **protseq, char **networkaddr, char **endpoint) DECLSPEC_HIDDEN
static void rpcrt4_conn_close_read(RpcConnection *connection)
RPC_STATUS RPCRT4_IsServerListening(const char *protseq, const char *endpoint) DECLSPEC_HIDDEN
RpcConnection * RPCRT4_GrabConnection(RpcConnection *conn) DECLSPEC_HIDDEN
void RPCRT4_AddRefBinding(RpcBinding *Binding) DECLSPEC_HIDDEN
void rpcrt4_conn_release_and_wait(RpcConnection *connection) DECLSPEC_HIDDEN
static int rpcrt4_conn_read(RpcConnection *Connection, void *buffer, unsigned int len)
struct _RpcQualityOfService RpcQualityOfService
ULONG RpcQualityOfService_AddRef(RpcQualityOfService *qos) DECLSPEC_HIDDEN
static int rpcrt4_conn_write(RpcConnection *Connection, const void *buffer, unsigned int len)
NDR_SCONTEXT RPCRT4_PopThreadContextHandle(void) DECLSPEC_HIDDEN
LPWSTR RPCRT4_strndupW(LPCWSTR src, INT len) DECLSPEC_HIDDEN
RPC_STATUS RPCRT4_CloseBinding(RpcBinding *Binding, RpcConnection *Connection) DECLSPEC_HIDDEN
RPC_STATUS RPCRT4_MakeBinding(RpcBinding **Binding, RpcConnection *Connection) DECLSPEC_HIDDEN
RPC_STATUS RpcAuthInfo_Create(ULONG AuthnLevel, ULONG AuthnSvc, CredHandle cred, TimeStamp exp, ULONG cbMaxToken, RPC_AUTH_IDENTITY_HANDLE identity, RpcAuthInfo **ret) DECLSPEC_HIDDEN
struct _RpcBinding RpcBinding
ULONG RpcAuthInfo_Release(RpcAuthInfo *AuthInfo) DECLSPEC_HIDDEN
RpcBinding * RPCRT4_GetThreadCurrentCallHandle(void) DECLSPEC_HIDDEN
LPSTR RPCRT4_strndupA(LPCSTR src, INT len) DECLSPEC_HIDDEN
static RPC_STATUS rpcrt4_conn_impersonate_client(RpcConnection *conn)
ULONG RpcAuthInfo_AddRef(RpcAuthInfo *AuthInfo) DECLSPEC_HIDDEN
struct _RpcAuthInfo RpcAuthInfo
BOOL RpcQualityOfService_IsEqual(const RpcQualityOfService *qos1, const RpcQualityOfService *qos2) DECLSPEC_HIDDEN
static RPC_STATUS rpcrt4_conn_revert_to_self(RpcConnection *conn)
ULONG RpcQualityOfService_Release(RpcQualityOfService *qos) DECLSPEC_HIDDEN
RPC_STATUS RPCRT4_OpenBinding(RpcBinding *Binding, RpcConnection **Connection, const RPC_SYNTAX_IDENTIFIER *TransferSyntax, const RPC_SYNTAX_IDENTIFIER *InterfaceId, BOOL *from_cache) DECLSPEC_HIDDEN
BOOL RpcAuthInfo_IsEqual(const RpcAuthInfo *AuthInfo1, const RpcAuthInfo *AuthInfo2) DECLSPEC_HIDDEN
static RPC_STATUS rpcrt4_conn_inquire_auth_client(RpcConnection *conn, RPC_AUTHZ_HANDLE *privs, RPC_WSTR *server_princ_name, ULONG *authn_level, ULONG *authn_svc, ULONG *authz_svc, ULONG flags)
RPC_STATUS RPCRT4_OpenClientConnection(RpcConnection *Connection) DECLSPEC_HIDDEN
LPWSTR RPCRT4_strdupAtoW(LPCSTR src) DECLSPEC_HIDDEN
void RPCRT4_ReleaseConnection(RpcConnection *Connection) DECLSPEC_HIDDEN
struct _RpcConnection RpcConnection
static RPC_STATUS rpcrt4_conn_authorize(RpcConnection *conn, BOOL first_time, unsigned char *in_buffer, unsigned int in_len, unsigned char *out_buffer, unsigned int *out_len)
void RPCRT4_SetThreadCurrentCallHandle(RpcBinding *Binding) DECLSPEC_HIDDEN
RPC_STATUS RPCRT4_CloseConnection(RpcConnection *Connection) DECLSPEC_HIDDEN
void RPCRT4_strfree(LPSTR src) DECLSPEC_HIDDEN
RPC_STATUS RPCRT4_ReleaseBinding(RpcBinding *Binding) DECLSPEC_HIDDEN
static BOOL rpcrt4_conn_is_authorized(RpcConnection *Connection)
void RPCRT4_RemoveThreadContextHandle(NDR_SCONTEXT SContext) DECLSPEC_HIDDEN
static void rpcrt4_conn_cancel_call(RpcConnection *Connection)
static int rpcrt4_conn_close(RpcConnection *Connection)
RPC_STATUS RPCRT4_SetBindingObject(RpcBinding *Binding, const UUID *ObjectUuid) DECLSPEC_HIDDEN
RPC_STATUS RpcTransport_GetTopOfTower(unsigned char *tower_data, size_t *tower_size, const char *protseq, const char *networkaddr, const char *endpoint) DECLSPEC_HIDDEN
RPC_STATUS RPCRT4_CreateConnection(RpcConnection **Connection, BOOL server, LPCSTR Protseq, LPCSTR NetworkAddr, LPCSTR Endpoint, LPCWSTR NetworkOptions, RpcAuthInfo *AuthInfo, RpcQualityOfService *QOS, LPCWSTR CookieAuth) DECLSPEC_HIDDEN
void RPCRT4_PushThreadContextHandle(NDR_SCONTEXT SContext) DECLSPEC_HIDDEN
void RPCRT4_SetThreadCurrentConnection(RpcConnection *Connection) DECLSPEC_HIDDEN
unsigned short * RPC_WSTR
RPC_AUTH_IDENTITY_HANDLE * identity
SEC_WINNT_AUTH_IDENTITY_W * nt_identity
LPWSTR server_principal_name
RPC_BLOCKING_FN BlockingFn
struct _RpcBinding * Next
RpcQualityOfService * QOS
struct list conn_pool_entry
RPC_SYNTAX_IDENTIFIER ActiveInterface
struct _RpcBinding * server_binding
USHORT MaxTransmissionSize
RPC_ASYNC_STATE * async_state
const struct connection_ops * ops
RpcQualityOfService * QOS
struct list protseq_entry
struct _RpcServerProtseq * protseq
ULONG encryption_auth_len
RPC_SECURITY_QOS_V2_W * qos
size_t(* get_top_of_tower)(unsigned char *tower_data, const char *networkaddr, const char *endpoint)
int(* read)(RpcConnection *conn, void *buffer, unsigned int len)
unsigned char epm_protocols[2]
RPC_STATUS(* secure_packet)(RpcConnection *Connection, enum secure_packet_direction dir, RpcPktHdr *hdr, unsigned int hdr_size, unsigned char *stub_data, unsigned int stub_data_size, RpcAuthVerifier *auth_hdr, unsigned char *auth_value, unsigned int auth_value_size)
RPC_STATUS(* authorize)(RpcConnection *conn, BOOL first_time, unsigned char *in_buffer, unsigned int in_len, unsigned char *out_buffer, unsigned int *out_len)
int(* write)(RpcConnection *conn, const void *buffer, unsigned int len)
RPC_STATUS(* revert_to_self)(RpcConnection *conn)
RPC_STATUS(* inquire_auth_client)(RpcConnection *, RPC_AUTHZ_HANDLE *, RPC_WSTR *, ULONG *, ULONG *, ULONG *, ULONG)
RPC_STATUS(* parse_top_of_tower)(const unsigned char *tower_data, size_t tower_size, char **networkaddr, char **endpoint)
RPC_STATUS(* open_connection_client)(RpcConnection *conn)
RPC_STATUS(* receive_fragment)(RpcConnection *conn, RpcPktHdr **Header, void **Payload)
int(* wait_for_incoming_data)(RpcConnection *conn)
RPC_STATUS(* impersonate_client)(RpcConnection *conn)
int(* close)(RpcConnection *conn)
BOOL(* is_authorized)(RpcConnection *conn)
RPC_STATUS(* handoff)(RpcConnection *old_conn, RpcConnection *new_conn)
void(* close_read)(RpcConnection *conn)
RPC_STATUS(* is_server_listening)(const char *endpoint)
void(* cancel_call)(RpcConnection *conn)
static rfbScreenInfoPtr server