FreeRDP
proxy_context.h File Reference
This graph shows which files directly or indirectly include this file:

Data Structures

struct  s_InterceptContextMapEntry
 
struct  pServerStaticChannelContext
 per channel configuration More...
 
struct  pServerContext
 
struct  pClientContext
 
struct  proxyData
 

Macros

#define PROXY_SESSION_ID_LENGTH   32
 

Typedefs

typedef PfChannelResult(* proxyChannelDataFn) (proxyData *pdata, const pServerStaticChannelContext *channel, const BYTE *xdata, size_t xsize, UINT32 flags, size_t totalSizepServer)
 
typedef void(* proxyChannelContextDtor) (void *context)
 

Enumerations

enum  pf_utils_channel_mode { PF_UTILS_CHANNEL_NOT_HANDLED, PF_UTILS_CHANNEL_BLOCK, PF_UTILS_CHANNEL_PASSTHROUGH, PF_UTILS_CHANNEL_INTERCEPT }
 how is handled a channel More...
 
enum  PfChannelResult { PF_CHANNEL_RESULT_PASS, PF_CHANNEL_RESULT_DROP, PF_CHANNEL_RESULT_ERROR }
 result of a channel treatment More...
 

Functions

FREERDP_API void intercept_context_entry_free (void *obj)
 
void StaticChannelContext_free (pServerStaticChannelContext *ctx)
 
pServerStaticChannelContext * StaticChannelContext_new (pServerContext *ps, const char *name, UINT32 id)
 
FREERDP_API BOOL pf_context_copy_settings (rdpSettings *dst, const rdpSettings *src)
 
FREERDP_API BOOL pf_context_init_server_context (freerdp_peer *client)
 
FREERDP_API pClientContext * pf_context_create_client_context (rdpSettings *clientSettings)
 
FREERDP_API proxyData * proxy_data_new (void)
 
FREERDP_API void proxy_data_set_client_context (proxyData *pdata, pClientContext *context)
 
FREERDP_API void proxy_data_set_server_context (proxyData *pdata, pServerContext *context)
 
FREERDP_API void proxy_data_free (proxyData *pdata)
 
FREERDP_API BOOL proxy_data_shall_disconnect (proxyData *pdata)
 
FREERDP_API void proxy_data_abort_connect (proxyData *pdata)
 

Macro Definition Documentation

◆ PROXY_SESSION_ID_LENGTH

#define PROXY_SESSION_ID_LENGTH   32

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.

Typedef Documentation

◆ proxyChannelContextDtor

typedef void(* proxyChannelContextDtor) (void *context)

◆ proxyChannelDataFn

typedef PfChannelResult(* proxyChannelDataFn) (proxyData *pdata, const pServerStaticChannelContext *channel, const BYTE *xdata, size_t xsize, UINT32 flags, size_t totalSizepServer)

Enumeration Type Documentation

◆ pf_utils_channel_mode

how is handled a channel

Enumerator
PF_UTILS_CHANNEL_NOT_HANDLED 

channel not handled

PF_UTILS_CHANNEL_BLOCK 

block and drop traffic on this channel

PF_UTILS_CHANNEL_PASSTHROUGH 

pass traffic from this channel

PF_UTILS_CHANNEL_INTERCEPT 

inspect traffic from this channel

◆ PfChannelResult

result of a channel treatment

Enumerator
PF_CHANNEL_RESULT_PASS 

pass the packet as is

PF_CHANNEL_RESULT_DROP 

drop the packet

PF_CHANNEL_RESULT_ERROR 

error during packet treatment

Function Documentation

◆ intercept_context_entry_free()

FREERDP_API void intercept_context_entry_free ( void *  obj)
Here is the caller graph for this function:

◆ pf_context_copy_settings()

FREERDP_API BOOL pf_context_copy_settings ( rdpSettings *  dst,
const rdpSettings *  src 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_context_create_client_context()

FREERDP_API pClientContext* pf_context_create_client_context ( rdpSettings *  clientSettings)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pf_context_init_server_context()

FREERDP_API BOOL pf_context_init_server_context ( freerdp_peer *  client)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ proxy_data_abort_connect()

FREERDP_API void proxy_data_abort_connect ( proxyData *  pdata)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ proxy_data_free()

FREERDP_API void proxy_data_free ( proxyData *  pdata)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ proxy_data_new()

FREERDP_API proxyData* proxy_data_new ( void  )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ proxy_data_set_client_context()

FREERDP_API void proxy_data_set_client_context ( proxyData *  pdata,
pClientContext *  context 
)
Here is the caller graph for this function:

◆ proxy_data_set_server_context()

FREERDP_API void proxy_data_set_server_context ( proxyData *  pdata,
pServerContext *  context 
)
Here is the caller graph for this function:

◆ proxy_data_shall_disconnect()

FREERDP_API BOOL proxy_data_shall_disconnect ( proxyData *  pdata)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ StaticChannelContext_free()

void StaticChannelContext_free ( pServerStaticChannelContext *  ctx)
Here is the caller graph for this function:

◆ StaticChannelContext_new()

pServerStaticChannelContext* StaticChannelContext_new ( pServerContext *  ps,
const char *  name,
UINT32  id 
)
Here is the call graph for this function:
Here is the caller graph for this function: