ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

rpc_transport.c File Reference
#include "config.h"
#include <stdarg.h>
#include <stdio.h>
#include <string.h>
#include <assert.h>
#include <stdlib.h>
#include <sys/types.h>
#include <errno.h>
#include <fcntl.h>
#include "windef.h"
#include "winbase.h"
#include "winnls.h"
#include "winerror.h"
#include "wininet.h"
#include "winternl.h"
#include "wine/unicode.h"
#include "rpc.h"
#include "rpcndr.h"
#include "wine/debug.h"
#include "rpc_binding.h"
#include "rpc_assoc.h"
#include "rpc_message.h"
#include "rpc_server.h"
#include "epm_towers.h"

Go to the source code of this file.

Data Structures

struct  RpcConnection_np
struct  RpcServerProtseq_np
struct  RpcConnection_tcp
struct  RpcServerProtseq_sock
struct  RpcHttpAsyncData
struct  RpcConnection_http
struct  HttpTimerThreadData

Defines

#define closesocket   close
#define ioctlsocket   ioctl
#define SOL_TCP   IPPROTO_TCP
#define DEFAULT_NCACN_HTTP_TIMEOUT   (60 * 1000)
#define HTTP_IDLE_TIME   60000
#define ARRAYSIZE(a)   (sizeof((a)) / sizeof((a)[0]))

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (rpc)
static RPC_STATUS RPCRT4_SpawnConnection (RpcConnection **Connection, RpcConnection *OldConnection)
static RpcConnectionrpcrt4_conn_np_alloc (void)
static RPC_STATUS rpcrt4_conn_listen_pipe (RpcConnection_np *npc)
static RPC_STATUS rpcrt4_conn_create_pipe (RpcConnection *Connection, LPCSTR pname)
static RPC_STATUS rpcrt4_conn_open_pipe (RpcConnection *Connection, LPCSTR pname, BOOL wait)
static RPC_STATUS rpcrt4_ncalrpc_open (RpcConnection *Connection)
static RPC_STATUS rpcrt4_protseq_ncalrpc_open_endpoint (RpcServerProtseq *protseq, const char *endpoint)
static RPC_STATUS rpcrt4_ncacn_np_open (RpcConnection *Connection)
static RPC_STATUS rpcrt4_protseq_ncacn_np_open_endpoint (RpcServerProtseq *protseq, const char *endpoint)
static void rpcrt4_conn_np_handoff (RpcConnection_np *old_npc, RpcConnection_np *new_npc)
static RPC_STATUS rpcrt4_ncacn_np_handoff (RpcConnection *old_conn, RpcConnection *new_conn)
static RPC_STATUS rpcrt4_ncalrpc_handoff (RpcConnection *old_conn, RpcConnection *new_conn)
static int rpcrt4_conn_np_read (RpcConnection *Connection, void *buffer, unsigned int count)
static int rpcrt4_conn_np_write (RpcConnection *Connection, const void *buffer, unsigned int count)
static int rpcrt4_conn_np_close (RpcConnection *Connection)
static void rpcrt4_conn_np_cancel_call (RpcConnection *Connection)
static int rpcrt4_conn_np_wait_for_incoming_data (RpcConnection *Connection)
static size_t rpcrt4_ncacn_np_get_top_of_tower (unsigned char *tower_data, const char *networkaddr, const char *endpoint)
static RPC_STATUS rpcrt4_ncacn_np_parse_top_of_tower (const unsigned char *tower_data, size_t tower_size, char **networkaddr, char **endpoint)
static RPC_STATUS rpcrt4_conn_np_impersonate_client (RpcConnection *conn)
static RPC_STATUS rpcrt4_conn_np_revert_to_self (RpcConnection *conn)
static RpcServerProtseqrpcrt4_protseq_np_alloc (void)
static void rpcrt4_protseq_np_signal_state_changed (RpcServerProtseq *protseq)
static voidrpcrt4_protseq_np_get_wait_array (RpcServerProtseq *protseq, void *prev_array, unsigned int *count)
static void rpcrt4_protseq_np_free_wait_array (RpcServerProtseq *protseq, void *array)
static int rpcrt4_protseq_np_wait_for_new_connection (RpcServerProtseq *protseq, unsigned int count, void *wait_array)
static size_t rpcrt4_ncalrpc_get_top_of_tower (unsigned char *tower_data, const char *networkaddr, const char *endpoint)
static RPC_STATUS rpcrt4_ncalrpc_parse_top_of_tower (const unsigned char *tower_data, size_t tower_size, char **networkaddr, char **endpoint)
static BOOL rpcrt4_ncalrpc_is_authorized (RpcConnection *conn)
static RPC_STATUS rpcrt4_ncalrpc_authorize (RpcConnection *conn, BOOL first_time, unsigned char *in_buffer, unsigned int in_size, unsigned char *out_buffer, unsigned int *out_size)
static RPC_STATUS rpcrt4_ncalrpc_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)
static RPC_STATUS rpcrt4_ncalrpc_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)
static size_t rpcrt4_ip_tcp_get_top_of_tower (unsigned char *tower_data, const char *networkaddr, unsigned char tcp_protid, const char *endpoint)
static RPC_STATUS rpcrt4_ip_tcp_parse_top_of_tower (const unsigned char *tower_data, size_t tower_size, char **networkaddr, unsigned char tcp_protid, char **endpoint)
static BOOL rpcrt4_sock_wait_init (RpcConnection_tcp *tcpc)
static BOOL rpcrt4_sock_wait_for_recv (RpcConnection_tcp *tcpc)
static BOOL rpcrt4_sock_wait_for_send (RpcConnection_tcp *tcpc)
static void rpcrt4_sock_wait_cancel (RpcConnection_tcp *tcpc)
static void rpcrt4_sock_wait_destroy (RpcConnection_tcp *tcpc)
static RpcConnectionrpcrt4_conn_tcp_alloc (void)
static RPC_STATUS rpcrt4_ncacn_ip_tcp_open (RpcConnection *Connection)
static RPC_STATUS rpcrt4_protseq_ncacn_ip_tcp_open_endpoint (RpcServerProtseq *protseq, const char *endpoint)
static RPC_STATUS rpcrt4_conn_tcp_handoff (RpcConnection *old_conn, RpcConnection *new_conn)
static int rpcrt4_conn_tcp_read (RpcConnection *Connection, void *buffer, unsigned int count)
static int rpcrt4_conn_tcp_write (RpcConnection *Connection, const void *buffer, unsigned int count)
static int rpcrt4_conn_tcp_close (RpcConnection *Connection)
static void rpcrt4_conn_tcp_cancel_call (RpcConnection *Connection)
static int rpcrt4_conn_tcp_wait_for_incoming_data (RpcConnection *Connection)
static size_t rpcrt4_ncacn_ip_tcp_get_top_of_tower (unsigned char *tower_data, const char *networkaddr, const char *endpoint)
static RpcServerProtseqrpcrt4_protseq_sock_alloc (void)
static void rpcrt4_protseq_sock_signal_state_changed (RpcServerProtseq *protseq)
static voidrpcrt4_protseq_sock_get_wait_array (RpcServerProtseq *protseq, void *prev_array, unsigned int *count)
static void rpcrt4_protseq_sock_free_wait_array (RpcServerProtseq *protseq, void *array)
static int rpcrt4_protseq_sock_wait_for_new_connection (RpcServerProtseq *protseq, unsigned int count, void *wait_array)
static RPC_STATUS rpcrt4_ncacn_ip_tcp_parse_top_of_tower (const unsigned char *tower_data, size_t tower_size, char **networkaddr, char **endpoint)
static ULONG RpcHttpAsyncData_AddRef (RpcHttpAsyncData *data)
static ULONG RpcHttpAsyncData_Release (RpcHttpAsyncData *data)
static RpcConnectionrpcrt4_ncacn_http_alloc (void)
static VOID rpcrt4_http_keep_connection_active_timer_proc (PVOID param, BOOLEAN dummy)
static DWORD rpcrt4_http_timer_calc_timeout (DWORD *last_sent_time)
static DWORD CALLBACK rpcrt4_http_timer_thread (PVOID param)
static VOID WINAPI rpcrt4_http_internet_callback (HINTERNET hInternet, DWORD_PTR dwContext, DWORD dwInternetStatus, LPVOID lpvStatusInformation, DWORD dwStatusInformationLength)
static RPC_STATUS rpcrt4_http_check_response (HINTERNET hor)
static RPC_STATUS rpcrt4_http_internet_connect (RpcConnection_http *httpc)
static RPC_STATUS rpcrt4_http_prepare_in_pipe (HINTERNET in_request, RpcHttpAsyncData *async_data, const UUID *connection_uuid, const UUID *in_pipe_uuid, const UUID *association_uuid)
static RPC_STATUS rpcrt4_http_read_http_packet (HINTERNET request, RpcPktHdr *hdr, BYTE **data)
static RPC_STATUS rpcrt4_http_prepare_out_pipe (HINTERNET out_request, RpcHttpAsyncData *async_data, const UUID *connection_uuid, const UUID *out_pipe_uuid, ULONG *flow_control_increment)
static RPC_STATUS rpcrt4_ncacn_http_open (RpcConnection *Connection)
static RPC_STATUS rpcrt4_ncacn_http_handoff (RpcConnection *old_conn, RpcConnection *new_conn)
static int rpcrt4_ncacn_http_read (RpcConnection *Connection, void *buffer, unsigned int count)
static RPC_STATUS rpcrt4_ncacn_http_receive_fragment (RpcConnection *Connection, RpcPktHdr **Header, void **Payload)
static int rpcrt4_ncacn_http_write (RpcConnection *Connection, const void *buffer, unsigned int count)
static int rpcrt4_ncacn_http_close (RpcConnection *Connection)
static void rpcrt4_ncacn_http_cancel_call (RpcConnection *Connection)
static int rpcrt4_ncacn_http_wait_for_incoming_data (RpcConnection *Connection)
static size_t rpcrt4_ncacn_http_get_top_of_tower (unsigned char *tower_data, const char *networkaddr, const char *endpoint)
static RPC_STATUS rpcrt4_ncacn_http_parse_top_of_tower (const unsigned char *tower_data, size_t tower_size, char **networkaddr, char **endpoint)
struct protseq_opsrpcrt4_get_protseq_ops (const char *protseq)
static struct connection_opsrpcrt4_get_conn_protseq_ops (const char *protseq)
RPC_STATUS RPCRT4_OpenClientConnection (RpcConnection *Connection)
RPC_STATUS RPCRT4_CloseConnection (RpcConnection *Connection)
RPC_STATUS RPCRT4_CreateConnection (RpcConnection **Connection, BOOL server, LPCSTR Protseq, LPCSTR NetworkAddr, LPCSTR Endpoint, LPCWSTR NetworkOptions, RpcAuthInfo *AuthInfo, RpcQualityOfService *QOS)
RPC_STATUS RPCRT4_DestroyConnection (RpcConnection *Connection)
RPC_STATUS RpcTransport_GetTopOfTower (unsigned char *tower_data, size_t *tower_size, const char *protseq, const char *networkaddr, const char *endpoint)
RPC_STATUS RpcTransport_ParseTopOfTower (const unsigned char *tower_data, size_t tower_size, char **protseq, char **networkaddr, char **endpoint)
RPC_STATUS WINAPI RpcNetworkIsProtseqValidW (RPC_WSTR protseq)
RPC_STATUS WINAPI RpcNetworkIsProtseqValidA (RPC_CSTR protseq)
RPC_STATUS WINAPI RpcProtseqVectorFreeA (RPC_PROTSEQ_VECTORA **protseqs)
RPC_STATUS WINAPI RpcProtseqVectorFreeW (RPC_PROTSEQ_VECTORW **protseqs)
RPC_STATUS WINAPI RpcNetworkInqProtseqsW (RPC_PROTSEQ_VECTORW **protseqs)
RPC_STATUS WINAPI RpcNetworkInqProtseqsA (RPC_PROTSEQ_VECTORA **protseqs)

Variables

static struct connection_ops conn_protseq_list []
static struct protseq_ops protseq_list []

Generated on Sun May 27 2012 05:17:37 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.