FreeRDP
shadow_server.c File Reference
#include <freerdp/config.h>
#include <errno.h>
#include <winpr/crt.h>
#include <winpr/ssl.h>
#include <winpr/path.h>
#include <winpr/cmdline.h>
#include <winpr/winsock.h>
#include <freerdp/log.h>
#include <freerdp/version.h>
#include <winpr/tools/makecert.h>
#include <sys/select.h>
#include <signal.h>
#include "shadow.h"

Macros

#define TAG   SERVER_TAG("shadow")
 

Functions

static int shadow_server_print_command_line_help (int argc, char **argv, COMMAND_LINE_ARGUMENT_A *largs)
 
int shadow_server_command_line_status_print (rdpShadowServer *server, int argc, char **argv, int status, COMMAND_LINE_ARGUMENT_A *cargs)
 
int shadow_server_parse_command_line (rdpShadowServer *server, int argc, char **argv, COMMAND_LINE_ARGUMENT_A *cargs)
 
static DWORD WINAPI shadow_server_thread (LPVOID arg)
 
static BOOL open_port (rdpShadowServer *server, char *address)
 
int shadow_server_start (rdpShadowServer *server)
 
int shadow_server_stop (rdpShadowServer *server)
 
static int shadow_server_init_config_path (rdpShadowServer *server)
 
static BOOL shadow_server_create_certificate (rdpShadowServer *server, const char *filepath)
 
static BOOL shadow_server_init_certificate (rdpShadowServer *server)
 
static BOOL shadow_server_check_peer_restrictions (freerdp_listener *listener)
 
int shadow_server_init (rdpShadowServer *server)
 
int shadow_server_uninit (rdpShadowServer *server)
 
rdpShadowServer * shadow_server_new (void)
 
void shadow_server_free (rdpShadowServer *server)
 

Variables

static const char bind_address [] = "bind-address,"
 

Macro Definition Documentation

◆ TAG

#define TAG   SERVER_TAG("shadow")

FreeRDP: A Remote Desktop Protocol Implementation

Copyright 2014 Marc-Andre Moreau marca.nosp@m.ndre.nosp@m..more.nosp@m.au@g.nosp@m.mail..nosp@m.com Copyright 2017 Armin Novak armin.nosp@m..nov.nosp@m.ak@th.nosp@m.inca.nosp@m.st.co.nosp@m.m Copyright 2017 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

◆ open_port()

static BOOL open_port ( rdpShadowServer *  server,
char *  address 
)
static
Here is the caller graph for this function:

◆ shadow_server_check_peer_restrictions()

static BOOL shadow_server_check_peer_restrictions ( freerdp_listener *  listener)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ shadow_server_command_line_status_print()

int shadow_server_command_line_status_print ( rdpShadowServer *  server,
int  argc,
char **  argv,
int  status,
COMMAND_LINE_ARGUMENT_A cargs 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ shadow_server_create_certificate()

static BOOL shadow_server_create_certificate ( rdpShadowServer *  server,
const char *  filepath 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ shadow_server_free()

void shadow_server_free ( rdpShadowServer *  server)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ shadow_server_init()

int shadow_server_init ( rdpShadowServer *  server)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ shadow_server_init_certificate()

static BOOL shadow_server_init_certificate ( rdpShadowServer *  server)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ shadow_server_init_config_path()

static int shadow_server_init_config_path ( rdpShadowServer *  server)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ shadow_server_new()

rdpShadowServer* shadow_server_new ( void  )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ shadow_server_parse_command_line()

int shadow_server_parse_command_line ( rdpShadowServer *  server,
int  argc,
char **  argv,
COMMAND_LINE_ARGUMENT_A cargs 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ shadow_server_print_command_line_help()

static int shadow_server_print_command_line_help ( int  argc,
char **  argv,
COMMAND_LINE_ARGUMENT_A largs 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ shadow_server_start()

int shadow_server_start ( rdpShadowServer *  server)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ shadow_server_stop()

int shadow_server_stop ( rdpShadowServer *  server)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ shadow_server_thread()

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

◆ shadow_server_uninit()

int shadow_server_uninit ( rdpShadowServer *  server)
Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ bind_address

const char bind_address[] = "bind-address,"
static