FreeRDP
|
#include <winpr/assert.h>
#include <freerdp/channels/drdynvc.h>
#include <freerdp/utils/drdynvc.h>
#include <freerdp/server/proxy/proxy_log.h>
#include "pf_channel_drdynvc.h"
#include "../pf_channel.h"
#include "../proxy_modules.h"
#include "../pf_utils.h"
Macros | |
#define | DTAG PROXY_TAG("drdynvc") |
Typedefs | |
typedef PfChannelResult(* | dynamic_channel_on_data_fn) (pServerContext *ps, pServerDynamicChannelContext *channel, BOOL isBackData, ChannelStateTracker *tracker, BOOL firstPacket, BOOL lastPacket) |
typedef void(* | channel_data_dtor_fn) (void **user_data) |
Enumerations | |
enum | PfDynChannelOpenStatus { CHANNEL_OPENSTATE_WAITING_OPEN_STATUS , CHANNEL_OPENSTATE_OPENED , CHANNEL_OPENSTATE_CLOSED } |
channel opened status More... | |
enum | DynvcReadResult { DYNCVC_READ_OK , DYNCVC_READ_ERROR , DYNCVC_READ_INCOMPLETE } |
result of dynamic channel packet treatment More... | |
Functions | |
static const char * | openstatus2str (PfDynChannelOpenStatus status) |
static PfChannelResult | data_cb (pServerContext *ps, pServerDynamicChannelContext *channel, BOOL isBackData, ChannelStateTracker *tracker, BOOL firstPacket, BOOL lastPacket) |
static pServerDynamicChannelContext * | DynamicChannelContext_new (wLog *log, pServerContext *ps, const char *name, UINT32 id) |
static void | DynamicChannelContext_free (void *ptr) |
static UINT32 | ChannelId_Hash (const void *key) |
static BOOL | ChannelId_Compare (const void *objA, const void *objB) |
static DynvcReadResult | dynvc_read_varInt (wLog *log, wStream *s, size_t len, UINT64 *varInt, BOOL last) |
static PfChannelResult | DynvcTrackerPeekFn (ChannelStateTracker *tracker, BOOL firstPacket, BOOL lastPacket) |
static void | DynChannelContext_free (void *context) |
static const char * | dynamic_context (void *arg) |
static DynChannelContext * | DynChannelContext_new (proxyData *pdata, pServerStaticChannelContext *channel) |
static PfChannelResult | pf_dynvc_back_data (proxyData *pdata, const pServerStaticChannelContext *channel, const BYTE *xdata, size_t xsize, UINT32 flags, size_t totalSize) |
static PfChannelResult | pf_dynvc_front_data (proxyData *pdata, const pServerStaticChannelContext *channel, const BYTE *xdata, size_t xsize, UINT32 flags, size_t totalSize) |
BOOL | pf_channel_setup_drdynvc (proxyData *pdata, pServerStaticChannelContext *channel) |
#define DTAG PROXY_TAG("drdynvc") |
FreeRDP: A Remote Desktop Protocol Implementation pf_channel_drdynvc
Copyright 2022 David Fort conta ct@h arden ing- consu ltin g.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.
typedef void(* channel_data_dtor_fn) (void **user_data) |
typedef PfChannelResult(* dynamic_channel_on_data_fn) (pServerContext *ps, pServerDynamicChannelContext *channel, BOOL isBackData, ChannelStateTracker *tracker, BOOL firstPacket, BOOL lastPacket) |
enum DynvcReadResult |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
BOOL pf_channel_setup_drdynvc | ( | proxyData * | pdata, |
pServerStaticChannelContext * | channel | ||
) |
FreeRDP: A Remote Desktop Protocol Implementation pf_channel_drdynvc
Copyright 2022 David Fort conta ct@h arden ing- consu ltin g.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.
|
static |
|
static |