FreeRDP
server/ainput_main.c File Reference
#include <freerdp/config.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <winpr/crt.h>
#include <winpr/assert.h>
#include <winpr/synch.h>
#include <winpr/thread.h>
#include <winpr/stream.h>
#include <winpr/sysinfo.h>
#include <freerdp/freerdp.h>
#include <freerdp/channels/ainput.h>
#include <freerdp/server/ainput.h>
#include <freerdp/channels/log.h>
#include "../common/ainput_common.h"

Macros

#define TAG   CHANNELS_TAG("ainput.server")
 

Enumerations

enum  eAInputChannelState { AINPUT_INITIAL , AINPUT_OPENED , AINPUT_VERSION_SENT }
 

Functions

static UINT ainput_server_context_poll (ainput_server_context *context)
 
static BOOL ainput_server_context_handle (ainput_server_context *context, HANDLE *handle)
 
static UINT ainput_server_context_poll_int (ainput_server_context *context)
 
static BOOL ainput_server_is_open (ainput_server_context *context)
 
static UINT ainput_server_open_channel (ainput_server *ainput)
 
static UINT ainput_server_send_version (ainput_server *ainput)
 
static UINT ainput_server_recv_mouse_event (ainput_server *ainput, wStream *s)
 
static HANDLE ainput_server_get_channel_handle (ainput_server *ainput)
 
static DWORD WINAPI ainput_server_thread_func (LPVOID arg)
 
static UINT ainput_server_open (ainput_server_context *context)
 
static UINT ainput_server_close (ainput_server_context *context)
 
static UINT ainput_server_initialize (ainput_server_context *context, BOOL externalThread)
 
ainput_server_context * ainput_server_context_new (HANDLE vcm)
 
void ainput_server_context_free (ainput_server_context *context)
 
static UINT ainput_process_message (ainput_server *ainput)
 

Macro Definition Documentation

◆ TAG

#define TAG   CHANNELS_TAG("ainput.server")

FreeRDP: A Remote Desktop Protocol Implementation Advanced Input Virtual Channel Extension

Copyright 2022 Armin Novak anova.nosp@m.k@th.nosp@m.incas.nosp@m.t.co.nosp@m.m Copyright 2022 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.

Enumeration Type Documentation

◆ eAInputChannelState

Enumerator
AINPUT_INITIAL 
AINPUT_OPENED 
AINPUT_VERSION_SENT 

Function Documentation

◆ ainput_process_message()

static UINT ainput_process_message ( ainput_server *  ainput)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ainput_server_close()

static UINT ainput_server_close ( ainput_server_context *  context)
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:

◆ ainput_server_context_free()

void ainput_server_context_free ( ainput_server_context *  context)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ainput_server_context_handle()

BOOL ainput_server_context_handle ( ainput_server_context *  context,
HANDLE *  handle 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ainput_server_context_new()

ainput_server_context* ainput_server_context_new ( HANDLE  vcm)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ainput_server_context_poll()

UINT ainput_server_context_poll ( ainput_server_context *  context)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ainput_server_context_poll_int()

UINT ainput_server_context_poll_int ( ainput_server_context *  context)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ainput_server_get_channel_handle()

static HANDLE ainput_server_get_channel_handle ( ainput_server *  ainput)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ainput_server_initialize()

static UINT ainput_server_initialize ( ainput_server_context *  context,
BOOL  externalThread 
)
static
Here is the caller graph for this function:

◆ ainput_server_is_open()

static BOOL ainput_server_is_open ( ainput_server_context *  context)
static
Here is the caller graph for this function:

◆ ainput_server_open()

static UINT ainput_server_open ( ainput_server_context *  context)
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:

◆ ainput_server_open_channel()

static UINT ainput_server_open_channel ( ainput_server *  ainput)
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:

◆ ainput_server_recv_mouse_event()

static UINT ainput_server_recv_mouse_event ( ainput_server *  ainput,
wStream s 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ainput_server_send_version()

static UINT ainput_server_send_version ( ainput_server *  ainput)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ainput_server_thread_func()

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