FreeRDP
rpc_client.c File Reference
#include <freerdp/log.h>
#include <winpr/crt.h>
#include <winpr/print.h>
#include <winpr/synch.h>
#include <winpr/thread.h>
#include <winpr/stream.h>
#include "http.h"
#include "ncacn_http.h"
#include "rpc_bind.h"
#include "rpc_fault.h"
#include "rpc_client.h"
#include "../rdp.h"
#include "../proxy.h"

Macros

#define TAG   FREERDP_TAG("core.gateway.rpc")
 

Functions

static void rpc_pdu_reset (RPC_PDU *pdu)
 
static RPC_PDUrpc_pdu_new (void)
 
static void rpc_pdu_free (RPC_PDU *pdu)
 
static int rpc_client_receive_pipe_write (RpcClient *client, const BYTE *buffer, size_t length)
 
int rpc_client_receive_pipe_read (RpcClient *client, BYTE *buffer, size_t length)
 
static int rpc_client_transition_to_state (rdpRpc *rpc, RPC_CLIENT_STATE state)
 
static int rpc_client_recv_pdu (rdpRpc *rpc, RPC_PDU *pdu)
 
static int rpc_client_recv_fragment (rdpRpc *rpc, wStream *fragment)
 
static int rpc_client_default_out_channel_recv (rdpRpc *rpc)
 
static int rpc_client_nondefault_out_channel_recv (rdpRpc *rpc)
 
int rpc_client_out_channel_recv (rdpRpc *rpc)
 
int rpc_client_in_channel_recv (rdpRpc *rpc)
 
RpcClientCall * rpc_client_call_find_by_id (RpcClient *client, UINT32 CallId)
 
RpcClientCall * rpc_client_call_new (UINT32 CallId, UINT32 OpNum)
 
void rpc_client_call_free (RpcClientCall *clientCall)
 
static void rpc_array_client_call_free (void *call)
 
int rpc_in_channel_send_pdu (RpcInChannel *inChannel, BYTE *buffer, UINT32 length)
 
BOOL rpc_client_write_call (rdpRpc *rpc, wStream *s, UINT16 opnum)
 
static BOOL rpc_client_resolve_gateway (rdpSettings *settings, char **host, UINT16 *port, BOOL *isProxy)
 
RpcClient * rpc_client_new (rdpContext *context, UINT32 max_recv_frag)
 
void rpc_client_free (RpcClient *client)
 

Macro Definition Documentation

#define TAG   FREERDP_TAG("core.gateway.rpc")

FreeRDP: A Remote Desktop Protocol Implementation RPC Client

Copyright 2012 Marc-Andre Moreau marca.nosp@m.ndre.nosp@m..more.nosp@m.au@g.nosp@m.mail..nosp@m.com

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Function Documentation

static void rpc_array_client_call_free ( void call)
static

Here is the call graph for this function:

Here is the caller graph for this function:

RpcClientCall* rpc_client_call_find_by_id ( RpcClient *  client,
UINT32  CallId 
)

[MS-RPCE] Client Call: http://msdn.microsoft.com/en-us/library/gg593159/

Here is the call graph for this function:

Here is the caller graph for this function:

void rpc_client_call_free ( RpcClientCall *  clientCall)

Here is the caller graph for this function:

RpcClientCall* rpc_client_call_new ( UINT32  CallId,
UINT32  OpNum 
)

Here is the caller graph for this function:

static int rpc_client_default_out_channel_recv ( rdpRpc *  rpc)
static

Here is the call graph for this function:

Here is the caller graph for this function:

void rpc_client_free ( RpcClient *  client)

Here is the call graph for this function:

Here is the caller graph for this function:

int rpc_client_in_channel_recv ( rdpRpc *  rpc)

Here is the call graph for this function:

Here is the caller graph for this function:

RpcClient* rpc_client_new ( rdpContext *  context,
UINT32  max_recv_frag 
)

Here is the call graph for this function:

Here is the caller graph for this function:

static int rpc_client_nondefault_out_channel_recv ( rdpRpc *  rpc)
static

Here is the call graph for this function:

Here is the caller graph for this function:

int rpc_client_out_channel_recv ( rdpRpc *  rpc)

Here is the call graph for this function:

Here is the caller graph for this function:

int rpc_client_receive_pipe_read ( RpcClient *  client,
BYTE buffer,
size_t  length 
)

Here is the call graph for this function:

Here is the caller graph for this function:

static int rpc_client_receive_pipe_write ( RpcClient *  client,
const BYTE buffer,
size_t  length 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

static int rpc_client_recv_fragment ( rdpRpc *  rpc,
wStream *  fragment 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

static int rpc_client_recv_pdu ( rdpRpc *  rpc,
RPC_PDU pdu 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

static BOOL rpc_client_resolve_gateway ( rdpSettings *  settings,
char **  host,
UINT16 port,
BOOL *  isProxy 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

static int rpc_client_transition_to_state ( rdpRpc *  rpc,
RPC_CLIENT_STATE  state 
)
static

Here is the caller graph for this function:

BOOL rpc_client_write_call ( rdpRpc *  rpc,
wStream *  s,
UINT16  opnum 
)

Here is the call graph for this function:

Here is the caller graph for this function:

int rpc_in_channel_send_pdu ( RpcInChannel *  inChannel,
BYTE buffer,
UINT32  length 
)

Here is the call graph for this function:

Here is the caller graph for this function:

static void rpc_pdu_free ( RPC_PDU pdu)
static

Here is the call graph for this function:

Here is the caller graph for this function:

static RPC_PDU* rpc_pdu_new ( void  )
static

Here is the call graph for this function:

Here is the caller graph for this function:

static void rpc_pdu_reset ( RPC_PDU pdu)
static

Here is the call graph for this function:

Here is the caller graph for this function: