FreeRDP
pf_update.c File Reference
#include <freerdp/display.h>
#include <freerdp/session.h>
#include <winpr/image.h>
#include <winpr/sysinfo.h>
#include "pf_modules.h"
#include "pf_update.h"
#include "pf_context.h"
#include "pf_log.h"

Macros

#define TAG   PROXY_TAG("update")
 

Functions

static BOOL pf_server_refresh_rect (rdpContext *context, BYTE count, const RECTANGLE_16 *areas)
 
static BOOL pf_server_suppress_output (rdpContext *context, BYTE allow, const RECTANGLE_16 *area)
 
static BOOL pf_client_begin_paint (rdpContext *context)
 
static BOOL pf_client_end_paint (rdpContext *context)
 
static BOOL pf_client_bitmap_update (rdpContext *context, const BITMAP_UPDATE *bitmap)
 
static BOOL pf_client_desktop_resize (rdpContext *context)
 
static BOOL pf_client_remote_monitors (rdpContext *context, UINT32 count, const MONITOR_DEF *monitors)
 
static BOOL pf_client_send_pointer_system (rdpContext *context, const POINTER_SYSTEM_UPDATE *pointer_system)
 
static BOOL pf_client_send_pointer_position (rdpContext *context, const POINTER_POSITION_UPDATE *pointerPosition)
 
static BOOL pf_client_send_pointer_color (rdpContext *context, const POINTER_COLOR_UPDATE *pointer_color)
 
static BOOL pf_client_send_pointer_large (rdpContext *context, const POINTER_LARGE_UPDATE *pointer_large)
 
static BOOL pf_client_send_pointer_new (rdpContext *context, const POINTER_NEW_UPDATE *pointer_new)
 
static BOOL pf_client_send_pointer_cached (rdpContext *context, const POINTER_CACHED_UPDATE *pointer_cached)
 
static BOOL pf_client_save_session_info (rdpContext *context, UINT32 type, void *data)
 
static BOOL pf_client_server_status_info (rdpContext *context, UINT32 status)
 
static BOOL pf_client_set_keyboard_indicators (rdpContext *context, UINT16 led_flags)
 
static BOOL pf_client_set_keyboard_ime_status (rdpContext *context, UINT16 imeId, UINT32 imeState, UINT32 imeConvMode)
 
static BOOL pf_client_window_create (rdpContext *context, const WINDOW_ORDER_INFO *orderInfo, const WINDOW_STATE_ORDER *windowState)
 
static BOOL pf_client_window_update (rdpContext *context, const WINDOW_ORDER_INFO *orderInfo, const WINDOW_STATE_ORDER *windowState)
 
static BOOL pf_client_window_icon (rdpContext *context, const WINDOW_ORDER_INFO *orderInfo, const WINDOW_ICON_ORDER *windowIcon)
 
static BOOL pf_client_window_cached_icon (rdpContext *context, const WINDOW_ORDER_INFO *orderInfo, const WINDOW_CACHED_ICON_ORDER *windowCachedIcon)
 
static BOOL pf_client_window_delete (rdpContext *context, const WINDOW_ORDER_INFO *orderInfo)
 
static BOOL pf_client_notify_icon_create (rdpContext *context, const WINDOW_ORDER_INFO *orderInfo, const NOTIFY_ICON_STATE_ORDER *notifyIconState)
 
static BOOL pf_client_notify_icon_update (rdpContext *context, const WINDOW_ORDER_INFO *orderInfo, const NOTIFY_ICON_STATE_ORDER *notifyIconState)
 
static BOOL pf_client_notify_icon_delete (rdpContext *context, const WINDOW_ORDER_INFO *orderInfo)
 
static BOOL pf_client_monitored_desktop (rdpContext *context, const WINDOW_ORDER_INFO *orderInfo, const MONITORED_DESKTOP_ORDER *monitoredDesktop)
 
static BOOL pf_client_non_monitored_desktop (rdpContext *context, const WINDOW_ORDER_INFO *orderInfo)
 
void pf_server_register_update_callbacks (rdpUpdate *update)
 
void pf_client_register_update_callbacks (rdpUpdate *update)
 

Macro Definition Documentation

◆ TAG

#define TAG   PROXY_TAG("update")

FreeRDP: A Remote Desktop Protocol Implementation FreeRDP Proxy Server

Copyright 2019 Mati Shabtay matis.nosp@m.habt.nosp@m.ay@gm.nosp@m.ail..nosp@m.com Copyright 2019 Kobi Mizrachi kmizr.nosp@m.achi.nosp@m.18@gm.nosp@m.ail..nosp@m.com Copyright 2019 Idan Freiberg speid.nosp@m.y@gm.nosp@m.ail.c.nosp@m.om

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

◆ pf_client_begin_paint()

static BOOL pf_client_begin_paint ( rdpContext *  context)
static

This function is called whenever a new frame starts. It can be used to reset invalidated areas.

Here is the caller graph for this function:

◆ pf_client_bitmap_update()

static BOOL pf_client_bitmap_update ( rdpContext *  context,
const BITMAP_UPDATE *  bitmap 
)
static
Here is the caller graph for this function:

◆ pf_client_desktop_resize()

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

◆ pf_client_end_paint()

static BOOL pf_client_end_paint ( rdpContext *  context)
static

This function is called when the library completed composing a new frame. Read out the changed areas and blit them to your output device. The image buffer will have the format specified by gdi_init

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_client_monitored_desktop()

static BOOL pf_client_monitored_desktop ( rdpContext *  context,
const WINDOW_ORDER_INFO *  orderInfo,
const MONITORED_DESKTOP_ORDER *  monitoredDesktop 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_client_non_monitored_desktop()

static BOOL pf_client_non_monitored_desktop ( rdpContext *  context,
const WINDOW_ORDER_INFO *  orderInfo 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_client_notify_icon_create()

static BOOL pf_client_notify_icon_create ( rdpContext *  context,
const WINDOW_ORDER_INFO *  orderInfo,
const NOTIFY_ICON_STATE_ORDER *  notifyIconState 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_client_notify_icon_delete()

static BOOL pf_client_notify_icon_delete ( rdpContext *  context,
const WINDOW_ORDER_INFO *  orderInfo 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_client_notify_icon_update()

static BOOL pf_client_notify_icon_update ( rdpContext *  context,
const WINDOW_ORDER_INFO *  orderInfo,
const NOTIFY_ICON_STATE_ORDER *  notifyIconState 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_client_register_update_callbacks()

void pf_client_register_update_callbacks ( rdpUpdate *  update)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_client_remote_monitors()

static BOOL pf_client_remote_monitors ( rdpContext *  context,
UINT32  count,
const MONITOR_DEF *  monitors 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_client_save_session_info()

static BOOL pf_client_save_session_info ( rdpContext *  context,
UINT32  type,
void *  data 
)
static
Here is the caller graph for this function:

◆ pf_client_send_pointer_cached()

static BOOL pf_client_send_pointer_cached ( rdpContext *  context,
const POINTER_CACHED_UPDATE *  pointer_cached 
)
static
Here is the caller graph for this function:

◆ pf_client_send_pointer_color()

static BOOL pf_client_send_pointer_color ( rdpContext *  context,
const POINTER_COLOR_UPDATE *  pointer_color 
)
static
Here is the caller graph for this function:

◆ pf_client_send_pointer_large()

static BOOL pf_client_send_pointer_large ( rdpContext *  context,
const POINTER_LARGE_UPDATE *  pointer_large 
)
static
Here is the caller graph for this function:

◆ pf_client_send_pointer_new()

static BOOL pf_client_send_pointer_new ( rdpContext *  context,
const POINTER_NEW_UPDATE *  pointer_new 
)
static
Here is the caller graph for this function:

◆ pf_client_send_pointer_position()

static BOOL pf_client_send_pointer_position ( rdpContext *  context,
const POINTER_POSITION_UPDATE *  pointerPosition 
)
static
Here is the caller graph for this function:

◆ pf_client_send_pointer_system()

static BOOL pf_client_send_pointer_system ( rdpContext *  context,
const POINTER_SYSTEM_UPDATE *  pointer_system 
)
static
Here is the caller graph for this function:

◆ pf_client_server_status_info()

static BOOL pf_client_server_status_info ( rdpContext *  context,
UINT32  status 
)
static
Here is the caller graph for this function:

◆ pf_client_set_keyboard_ime_status()

static BOOL pf_client_set_keyboard_ime_status ( rdpContext *  context,
UINT16  imeId,
UINT32  imeState,
UINT32  imeConvMode 
)
static
Here is the caller graph for this function:

◆ pf_client_set_keyboard_indicators()

static BOOL pf_client_set_keyboard_indicators ( rdpContext *  context,
UINT16  led_flags 
)
static
Here is the caller graph for this function:

◆ pf_client_window_cached_icon()

static BOOL pf_client_window_cached_icon ( rdpContext *  context,
const WINDOW_ORDER_INFO *  orderInfo,
const WINDOW_CACHED_ICON_ORDER *  windowCachedIcon 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_client_window_create()

static BOOL pf_client_window_create ( rdpContext *  context,
const WINDOW_ORDER_INFO *  orderInfo,
const WINDOW_STATE_ORDER *  windowState 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_client_window_delete()

static BOOL pf_client_window_delete ( rdpContext *  context,
const WINDOW_ORDER_INFO *  orderInfo 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_client_window_icon()

static BOOL pf_client_window_icon ( rdpContext *  context,
const WINDOW_ORDER_INFO *  orderInfo,
const WINDOW_ICON_ORDER *  windowIcon 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_client_window_update()

static BOOL pf_client_window_update ( rdpContext *  context,
const WINDOW_ORDER_INFO *  orderInfo,
const WINDOW_STATE_ORDER *  windowState 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_server_refresh_rect()

static BOOL pf_server_refresh_rect ( rdpContext *  context,
BYTE  count,
const RECTANGLE_16 *  areas 
)
static
Here is the caller graph for this function:

◆ pf_server_register_update_callbacks()

void pf_server_register_update_callbacks ( rdpUpdate *  update)

FreeRDP: A Remote Desktop Protocol Implementation FreeRDP Proxy Server

Copyright 2019 Mati Shabtay matis.nosp@m.habt.nosp@m.ay@gm.nosp@m.ail..nosp@m.com Copyright 2019 Kobi Mizrachi kmizr.nosp@m.achi.nosp@m.18@gm.nosp@m.ail..nosp@m.com Copyright 2019 Idan Freiberg speid.nosp@m.y@gm.nosp@m.ail.c.nosp@m.om

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.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_server_suppress_output()

static BOOL pf_server_suppress_output ( rdpContext *  context,
BYTE  allow,
const RECTANGLE_16 *  area 
)
static
Here is the caller graph for this function: