FreeRDP
client/remdesk_main.c File Reference
#include <winpr/crt.h>
#include <winpr/print.h>
#include <freerdp/assistance.h>
#include <freerdp/channels/log.h>
#include <freerdp/client/remdesk.h>
#include "remdesk_main.h"

Macros

#define VirtualChannelEntryEx   remdesk_VirtualChannelEntryEx
 

Functions

static UINT remdesk_virtual_channel_write (remdeskPlugin *remdesk, wStream *s)
 
static UINT remdesk_generate_expert_blob (remdeskPlugin *remdesk)
 
static UINT remdesk_read_channel_header (wStream *s, REMDESK_CHANNEL_HEADER *header)
 
static UINT remdesk_write_channel_header (wStream *s, REMDESK_CHANNEL_HEADER *header)
 
static UINT remdesk_write_ctl_header (wStream *s, REMDESK_CTL_HEADER *ctlHeader)
 
static UINT remdesk_prepare_ctl_header (REMDESK_CTL_HEADER *ctlHeader, UINT32 msgType, UINT32 msgSize)
 
static UINT remdesk_recv_ctl_server_announce_pdu (remdeskPlugin *remdesk, wStream *s, REMDESK_CHANNEL_HEADER *header)
 
static UINT remdesk_recv_ctl_version_info_pdu (remdeskPlugin *remdesk, wStream *s, REMDESK_CHANNEL_HEADER *header)
 
static UINT remdesk_send_ctl_version_info_pdu (remdeskPlugin *remdesk)
 
static UINT remdesk_recv_ctl_result_pdu (remdeskPlugin *remdesk, wStream *s, REMDESK_CHANNEL_HEADER *header, UINT32 *pResult)
 
static UINT remdesk_send_ctl_authenticate_pdu (remdeskPlugin *remdesk)
 
static UINT remdesk_send_ctl_remote_control_desktop_pdu (remdeskPlugin *remdesk)
 
static UINT remdesk_send_ctl_verify_password_pdu (remdeskPlugin *remdesk)
 
static UINT remdesk_send_ctl_expert_on_vista_pdu (remdeskPlugin *remdesk)
 
static UINT remdesk_recv_ctl_pdu (remdeskPlugin *remdesk, wStream *s, REMDESK_CHANNEL_HEADER *header)
 
static UINT remdesk_process_receive (remdeskPlugin *remdesk, wStream *s)
 
static void remdesk_process_connect (remdeskPlugin *remdesk)
 
static UINT remdesk_virtual_channel_event_data_received (remdeskPlugin *remdesk, void *pData, UINT32 dataLength, UINT32 totalLength, UINT32 dataFlags)
 
static VOID VCAPITYPE remdesk_virtual_channel_open_event_ex (LPVOID lpUserParam, DWORD openHandle, UINT event, LPVOID pData, UINT32 dataLength, UINT32 totalLength, UINT32 dataFlags)
 
static DWORD WINAPI remdesk_virtual_channel_client_thread (LPVOID arg)
 
static UINT remdesk_virtual_channel_event_connected (remdeskPlugin *remdesk, LPVOID pData, UINT32 dataLength)
 
static UINT remdesk_virtual_channel_event_disconnected (remdeskPlugin *remdesk)
 
static void remdesk_virtual_channel_event_terminated (remdeskPlugin *remdesk)
 
static VOID VCAPITYPE remdesk_virtual_channel_init_event_ex (LPVOID lpUserParam, LPVOID pInitHandle, UINT event, LPVOID pData, UINT dataLength)
 
BOOL VCAPITYPE VirtualChannelEntryEx (PCHANNEL_ENTRY_POINTS pEntryPoints, PVOID pInitHandle)
 

Macro Definition Documentation

#define VirtualChannelEntryEx   remdesk_VirtualChannelEntryEx

Function Documentation

static UINT remdesk_generate_expert_blob ( remdeskPlugin *  remdesk)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_prepare_ctl_header ( REMDESK_CTL_HEADER *  ctlHeader,
UINT32  msgType,
UINT32  msgSize 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the caller graph for this function:

static void remdesk_process_connect ( remdeskPlugin *  remdesk)
static

Here is the caller graph for this function:

static UINT remdesk_process_receive ( remdeskPlugin *  remdesk,
wStream *  s 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_read_channel_header ( wStream *  s,
REMDESK_CHANNEL_HEADER *  header 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_recv_ctl_pdu ( remdeskPlugin *  remdesk,
wStream *  s,
REMDESK_CHANNEL_HEADER *  header 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_recv_ctl_result_pdu ( remdeskPlugin *  remdesk,
wStream *  s,
REMDESK_CHANNEL_HEADER *  header,
UINT32 pResult 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_recv_ctl_server_announce_pdu ( remdeskPlugin *  remdesk,
wStream *  s,
REMDESK_CHANNEL_HEADER *  header 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the caller graph for this function:

static UINT remdesk_recv_ctl_version_info_pdu ( remdeskPlugin *  remdesk,
wStream *  s,
REMDESK_CHANNEL_HEADER *  header 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_send_ctl_authenticate_pdu ( remdeskPlugin *  remdesk)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_send_ctl_expert_on_vista_pdu ( remdeskPlugin *  remdesk)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_send_ctl_remote_control_desktop_pdu ( remdeskPlugin *  remdesk)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_send_ctl_verify_password_pdu ( remdeskPlugin *  remdesk)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_send_ctl_version_info_pdu ( remdeskPlugin *  remdesk)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static DWORD WINAPI remdesk_virtual_channel_client_thread ( LPVOID  arg)
static

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_virtual_channel_event_connected ( remdeskPlugin *  remdesk,
LPVOID  pData,
UINT32  dataLength 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_virtual_channel_event_data_received ( remdeskPlugin *  remdesk,
void pData,
UINT32  dataLength,
UINT32  totalLength,
UINT32  dataFlags 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_virtual_channel_event_disconnected ( remdeskPlugin *  remdesk)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static void remdesk_virtual_channel_event_terminated ( remdeskPlugin *  remdesk)
static

Here is the caller graph for this function:

static VOID VCAPITYPE remdesk_virtual_channel_init_event_ex ( LPVOID  lpUserParam,
LPVOID  pInitHandle,
UINT  event,
LPVOID  pData,
UINT  dataLength 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

static VOID VCAPITYPE remdesk_virtual_channel_open_event_ex ( LPVOID  lpUserParam,
DWORD  openHandle,
UINT  event,
LPVOID  pData,
UINT32  dataLength,
UINT32  totalLength,
UINT32  dataFlags 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_virtual_channel_write ( remdeskPlugin *  remdesk,
wStream *  s 
)
static

FreeRDP: A Remote Desktop Protocol Implementation Remote Assistance Virtual Channel

Copyright 2014 Marc-Andre Moreau marca.nosp@m.ndre.nosp@m..more.nosp@m.au@g.nosp@m.mail..nosp@m.com Copyright 2015 Thincast Technologies GmbH Copyright 2015 DI (FH) Martin Haimberger marti.nosp@m.n.ha.nosp@m.imber.nosp@m.ger@.nosp@m.thinc.nosp@m.ast..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 description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_write_channel_header ( wStream *  s,
REMDESK_CHANNEL_HEADER *  header 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

static UINT remdesk_write_ctl_header ( wStream *  s,
REMDESK_CTL_HEADER *  ctlHeader 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code

Here is the call graph for this function:

Here is the caller graph for this function:

BOOL VCAPITYPE VirtualChannelEntryEx ( PCHANNEL_ENTRY_POINTS  pEntryPoints,
PVOID  pInitHandle 
)

Here is the call graph for this function: