FreeRDP
client/location_main.c File Reference
#include <freerdp/config.h>
#include <stdio.h>
#include <stdlib.h>
#include <float.h>
#include <math.h>
#include <winpr/crt.h>
#include <winpr/assert.h>
#include <winpr/stream.h>
#include <freerdp/client/channels.h>
#include <freerdp/channels/log.h>
#include <freerdp/channels/location.h>
#include <freerdp/client/location.h>
#include <freerdp/utils/encoded_types.h>

Macros

#define TAG   CHANNELS_TAG("location.client")
 

Functions

static BOOL location_read_header (wLog *log, wStream *s, UINT16 *ppduType, UINT32 *ppduLength)
 
static BOOL location_write_header (wStream *s, UINT16 pduType, UINT32 pduLength)
 
static BOOL location_read_server_ready_pdu (LOCATION_CALLBACK *callback, wStream *s, UINT16 pduSize)
 
static UINT location_channel_send (IWTSVirtualChannel *channel, wStream *s)
 
static UINT location_send_client_ready_pdu (const LOCATION_CALLBACK *callback)
 
static const char * location_version_str (UINT32 version, char *buffer, size_t size)
 
static UINT location_on_data_received (IWTSVirtualChannelCallback *pChannelCallback, wStream *data)
 
static UINT location_send_base_location3d (IWTSVirtualChannel *channel, const RDPLOCATION_BASE_LOCATION3D_PDU *pdu)
 
static UINT location_send_location2d_delta (IWTSVirtualChannel *channel, const RDPLOCATION_LOCATION2D_DELTA_PDU *pdu)
 
static UINT location_send_location3d_delta (IWTSVirtualChannel *channel, const RDPLOCATION_LOCATION3D_DELTA_PDU *pdu)
 
static UINT location_send (LocationClientContext *context, LOCATION_PDUTYPE type, size_t count,...)
 
static UINT location_on_close (IWTSVirtualChannelCallback *pChannelCallback)
 
static UINT location_init (GENERIC_DYNVC_PLUGIN *plugin, rdpContext *context, rdpSettings *settings)
 

Variables

static const IWTSVirtualChannelCallback location_callbacks
 

Macro Definition Documentation

◆ TAG

#define TAG   CHANNELS_TAG("location.client")

FreeRDP: A Remote Desktop Protocol Implementation Location Virtual Channel Extension

Copyright 2024 Armin Novak anova.nosp@m.k@th.nosp@m.incas.nosp@m.t.co.nosp@m.m Copyright 2024 Thincast Technologies GmbH

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

◆ location_channel_send()

static UINT location_channel_send ( IWTSVirtualChannel *  channel,
wStream s 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ location_init()

static UINT location_init ( GENERIC_DYNVC_PLUGIN plugin,
rdpContext *  context,
rdpSettings *  settings 
)
static
Here is the call graph for this function:

◆ location_on_close()

static UINT location_on_close ( IWTSVirtualChannelCallback *  pChannelCallback)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:

◆ location_on_data_received()

static UINT location_on_data_received ( IWTSVirtualChannelCallback *  pChannelCallback,
wStream data 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:

◆ location_read_header()

static BOOL location_read_header ( wLog *  log,
wStream s,
UINT16 ppduType,
UINT32 *  ppduLength 
)
static
Here is the caller graph for this function:

◆ location_read_server_ready_pdu()

static BOOL location_read_server_ready_pdu ( LOCATION_CALLBACK *  callback,
wStream s,
UINT16  pduSize 
)
static
Here is the caller graph for this function:

◆ location_send()

static UINT location_send ( LocationClientContext *  context,
LOCATION_PDUTYPE  type,
size_t  count,
  ... 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ location_send_base_location3d()

static UINT location_send_base_location3d ( IWTSVirtualChannel *  channel,
const RDPLOCATION_BASE_LOCATION3D_PDU pdu 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ location_send_client_ready_pdu()

static UINT location_send_client_ready_pdu ( const LOCATION_CALLBACK *  callback)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ location_send_location2d_delta()

static UINT location_send_location2d_delta ( IWTSVirtualChannel *  channel,
const RDPLOCATION_LOCATION2D_DELTA_PDU pdu 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ location_send_location3d_delta()

static UINT location_send_location3d_delta ( IWTSVirtualChannel *  channel,
const RDPLOCATION_LOCATION3D_DELTA_PDU pdu 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ location_version_str()

static const char* location_version_str ( UINT32  version,
char *  buffer,
size_t  size 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ location_write_header()

static BOOL location_write_header ( wStream s,
UINT16  pduType,
UINT32  pduLength 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ location_callbacks

const IWTSVirtualChannelCallback location_callbacks
static
Initial value:
NULL,
if availableBytes return NULL
Definition: TPCircularBuffer.h:109
static UINT location_on_close(IWTSVirtualChannelCallback *pChannelCallback)
Definition: client/location_main.c:430
static UINT location_on_data_received(IWTSVirtualChannelCallback *pChannelCallback, wStream *data)
Definition: client/location_main.c:150