FreeRDP
wf_client.c File Reference
#include <freerdp/config.h>
#include <winpr/windows.h>
#include <winpr/crt.h>
#include <winpr/assert.h>
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <tchar.h>
#include <sys/types.h>
#include <io.h>
#include <freerdp/log.h>
#include <freerdp/freerdp.h>
#include <freerdp/constants.h>
#include <freerdp/settings.h>
#include <freerdp/locale/keyboard.h>
#include <freerdp/codec/region.h>
#include <freerdp/client/cmdline.h>
#include <freerdp/client/channels.h>
#include <freerdp/channels/channels.h>
#include "wf_gdi.h"
#include "wf_rail.h"
#include "wf_channels.h"
#include "wf_graphics.h"
#include "resource/resource.h"

Macros

#define TAG   CLIENT_TAG("windows")
 
#define WM_FREERDP_SHOWWINDOW   (WM_USER + 100)
 

Functions

static BOOL wf_has_console (void)
 
static BOOL wf_end_paint (rdpContext *context)
 
static BOOL wf_begin_paint (rdpContext *context)
 
static BOOL wf_desktop_resize (rdpContext *context)
 
static BOOL wf_pre_connect (freerdp *instance)
 
static void wf_append_item_to_system_menu (HMENU hMenu, UINT fMask, UINT wID, const wchar_t *text, wfContext *wfc)
 
static void wf_add_system_menu (wfContext *wfc)
 
static WCHAR * wf_window_get_title (rdpSettings *settings)
 
static BOOL wf_post_connect (freerdp *instance)
 
static void wf_post_disconnect (freerdp *instance)
 
static BOOL wf_authenticate_ex (freerdp *instance, char **username, char **password, char **domain, rdp_auth_reason reason)
 
static WCHAR * wf_format_text (const WCHAR *fmt,...)
 
static DWORD wf_cli_verify_certificate_ex (freerdp *instance, const char *host, UINT16 port, const char *common_name, const char *subject, const char *issuer, const char *fingerprint, DWORD flags)
 
static DWORD wf_verify_certificate_ex (freerdp *instance, const char *host, UINT16 port, const char *common_name, const char *subject, const char *issuer, const char *fingerprint, DWORD flags)
 
static DWORD wf_verify_changed_certificate_ex (freerdp *instance, const char *host, UINT16 port, const char *common_name, const char *subject, const char *issuer, const char *new_fingerprint, const char *old_subject, const char *old_issuer, const char *old_fingerprint, DWORD flags)
 
static BOOL wf_present_gateway_message (freerdp *instance, UINT32 type, BOOL isDisplayMandatory, BOOL isConsentMandatory, size_t length, const WCHAR *message)
 
static DWORD WINAPI wf_client_thread (LPVOID lpParam)
 
static DWORD WINAPI wf_keyboard_thread (LPVOID lpParam)
 
int freerdp_client_set_window_size (wfContext *wfc, int width, int height)
 
void wf_size_scrollbars (wfContext *wfc, UINT32 client_width, UINT32 client_height)
 
static BOOL wfreerdp_client_global_init (void)
 
static void wfreerdp_client_global_uninit (void)
 
static BOOL wfreerdp_client_new (freerdp *instance, rdpContext *context)
 
static void wfreerdp_client_free (freerdp *instance, rdpContext *context)
 
static int wfreerdp_client_start (rdpContext *context)
 
static int wfreerdp_client_stop (rdpContext *context)
 
int RdpClientEntry (RDP_CLIENT_ENTRY_POINTS *pEntryPoints)
 

Variables

static CREDUI_INFOW wfUiInfo
 

Macro Definition Documentation

◆ TAG

#define TAG   CLIENT_TAG("windows")

FreeRDP: A Remote Desktop Protocol Implementation Windows Client

Copyright 2009-2011 Jay Sorg Copyright 2010-2011 Vic Lee Copyright 2010-2011 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.

◆ WM_FREERDP_SHOWWINDOW

#define WM_FREERDP_SHOWWINDOW   (WM_USER + 100)

Function Documentation

◆ freerdp_client_set_window_size()

int freerdp_client_set_window_size ( wfContext *  wfc,
int  width,
int  height 
)
Here is the call graph for this function:

◆ RdpClientEntry()

int RdpClientEntry ( RDP_CLIENT_ENTRY_POINTS pEntryPoints)

Client Interface

Here is the call graph for this function:

◆ wf_add_system_menu()

static void wf_add_system_menu ( wfContext *  wfc)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_append_item_to_system_menu()

static void wf_append_item_to_system_menu ( HMENU  hMenu,
UINT  fMask,
UINT  wID,
const wchar_t *  text,
wfContext *  wfc 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_authenticate_ex()

static BOOL wf_authenticate_ex ( freerdp *  instance,
char **  username,
char **  password,
char **  domain,
rdp_auth_reason  reason 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_begin_paint()

static BOOL wf_begin_paint ( rdpContext *  context)
static
Here is the caller graph for this function:

◆ wf_cli_verify_certificate_ex()

static DWORD wf_cli_verify_certificate_ex ( freerdp *  instance,
const char *  host,
UINT16  port,
const char *  common_name,
const char *  subject,
const char *  issuer,
const char *  fingerprint,
DWORD  flags 
)
static
Here is the call graph for this function:

◆ wf_client_thread()

static DWORD WINAPI wf_client_thread ( LPVOID  lpParam)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_desktop_resize()

static BOOL wf_desktop_resize ( rdpContext *  context)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_end_paint()

static BOOL wf_end_paint ( rdpContext *  context)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_format_text()

static WCHAR* wf_format_text ( const WCHAR *  fmt,
  ... 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_has_console()

static BOOL wf_has_console ( void  )
static
Here is the caller graph for this function:

◆ wf_keyboard_thread()

static DWORD WINAPI wf_keyboard_thread ( LPVOID  lpParam)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_post_connect()

static BOOL wf_post_connect ( freerdp *  instance)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_post_disconnect()

static void wf_post_disconnect ( freerdp *  instance)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_pre_connect()

static BOOL wf_pre_connect ( freerdp *  instance)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_present_gateway_message()

static BOOL wf_present_gateway_message ( freerdp *  instance,
UINT32  type,
BOOL  isDisplayMandatory,
BOOL  isConsentMandatory,
size_t  length,
const WCHAR *  message 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_size_scrollbars()

void wf_size_scrollbars ( wfContext *  wfc,
UINT32  client_width,
UINT32  client_height 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_verify_certificate_ex()

static DWORD wf_verify_certificate_ex ( freerdp *  instance,
const char *  host,
UINT16  port,
const char *  common_name,
const char *  subject,
const char *  issuer,
const char *  fingerprint,
DWORD  flags 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_verify_changed_certificate_ex()

static DWORD wf_verify_changed_certificate_ex ( freerdp *  instance,
const char *  host,
UINT16  port,
const char *  common_name,
const char *  subject,
const char *  issuer,
const char *  new_fingerprint,
const char *  old_subject,
const char *  old_issuer,
const char *  old_fingerprint,
DWORD  flags 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_window_get_title()

static WCHAR* wf_window_get_title ( rdpSettings *  settings)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wfreerdp_client_free()

static void wfreerdp_client_free ( freerdp *  instance,
rdpContext *  context 
)
static
Here is the caller graph for this function:

◆ wfreerdp_client_global_init()

static BOOL wfreerdp_client_global_init ( void  )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wfreerdp_client_global_uninit()

static void wfreerdp_client_global_uninit ( void  )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wfreerdp_client_new()

static BOOL wfreerdp_client_new ( freerdp *  instance,
rdpContext *  context 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wfreerdp_client_start()

static int wfreerdp_client_start ( rdpContext *  context)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wfreerdp_client_stop()

static int wfreerdp_client_stop ( rdpContext *  context)
static
Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ wfUiInfo

CREDUI_INFOW wfUiInfo
static
Initial value:
= { sizeof(CREDUI_INFOW), NULL, L"Enter your credentials",
L"Remote Desktop Security", NULL }
if availableBytes return NULL
Definition: TPCircularBuffer.h:109