FreeRDP
devman.c File Reference
#include <freerdp/config.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <winpr/crt.h>
#include <winpr/stream.h>
#include <freerdp/types.h>
#include <freerdp/addin.h>
#include <freerdp/client/channels.h>
#include <freerdp/channels/log.h>
#include "rdpdr_main.h"
#include "devman.h"

Macros

#define TAG   CHANNELS_TAG("rdpdr.client")
 

Functions

static void devman_device_free (void *obj)
 
DEVMAN * devman_new (rdpdrPlugin *rdpdr)
 
void devman_free (DEVMAN *devman)
 
void devman_unregister_device (DEVMAN *devman, void *key)
 
static UINT devman_register_device (DEVMAN *devman, DEVICE *device)
 
DEVICE * devman_get_device_by_id (DEVMAN *devman, UINT32 id)
 
DEVICE * devman_get_device_by_type (DEVMAN *devman, UINT32 type)
 
UINT devman_load_device_service (DEVMAN *devman, const RDPDR_DEVICE *device, rdpContext *rdpcontext)
 

Variables

static const char DRIVE_SERVICE_NAME [] = "drive"
 
static const char PRINTER_SERVICE_NAME [] = "printer"
 
static const char SMARTCARD_SERVICE_NAME [] = "smartcard"
 
static const char SERIAL_SERVICE_NAME [] = "serial"
 
static const char PARALLEL_SERVICE_NAME [] = "parallel"
 

Macro Definition Documentation

◆ TAG

#define TAG   CHANNELS_TAG("rdpdr.client")

FreeRDP: A Remote Desktop Protocol Implementation Device Redirection Virtual Channel

Copyright 2010-2011 Vic Lee Copyright 2010-2012 Marc-Andre Moreau marca.nosp@m.ndre.nosp@m..more.nosp@m.au@g.nosp@m.mail..nosp@m.com Copyright 2015 Thincast Technologies GmbH Copyright 2015 DI (FH) Martin Haimberger marti.nosp@m.n.ha.nosp@m.imber.nosp@m.ger@.nosp@m.thinc.nosp@m.ast..nosp@m.com Copyright 2016 Armin Novak armin.nosp@m..nov.nosp@m.ak@gm.nosp@m.ail..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.

Function Documentation

◆ devman_device_free()

static void devman_device_free ( void *  obj)
static
Here is the caller graph for this function:

◆ devman_free()

void devman_free ( DEVMAN *  devman)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ devman_get_device_by_id()

DEVICE* devman_get_device_by_id ( DEVMAN *  devman,
UINT32  id 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ devman_get_device_by_type()

DEVICE* devman_get_device_by_type ( DEVMAN *  devman,
UINT32  type 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ devman_load_device_service()

UINT devman_load_device_service ( DEVMAN *  devman,
const RDPDR_DEVICE device,
rdpContext *  rdpcontext 
)

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:

◆ devman_new()

DEVMAN* devman_new ( rdpdrPlugin rdpdr)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ devman_register_device()

static UINT devman_register_device ( DEVMAN *  devman,
DEVICE *  device 
)
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:

◆ devman_unregister_device()

void devman_unregister_device ( DEVMAN *  devman,
void *  key 
)

FreeRDP: A Remote Desktop Protocol Implementation Device Redirection Virtual Channel

Copyright 2010-2011 Vic Lee Copyright 2010-2012 Marc-Andre Moreau marca.nosp@m.ndre.nosp@m..more.nosp@m.au@g.nosp@m.mail..nosp@m.com Copyright 2015 Thincast Technologies GmbH Copyright 2015 DI (FH) Martin Haimberger marti.nosp@m.n.ha.nosp@m.imber.nosp@m.ger@.nosp@m.thinc.nosp@m.ast..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.

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

Variable Documentation

◆ DRIVE_SERVICE_NAME

const char DRIVE_SERVICE_NAME[] = "drive"
static

◆ PARALLEL_SERVICE_NAME

const char PARALLEL_SERVICE_NAME[] = "parallel"
static

◆ PRINTER_SERVICE_NAME

const char PRINTER_SERVICE_NAME[] = "printer"
static

◆ SERIAL_SERVICE_NAME

const char SERIAL_SERVICE_NAME[] = "serial"
static

◆ SMARTCARD_SERVICE_NAME

const char SMARTCARD_SERVICE_NAME[] = "smartcard"
static