From cc3f33db7a8d3c4ad373e646b199808e01bc5d9b Mon Sep 17 00:00:00 2001 From: sss Date: Tue, 17 Jan 2023 00:38:19 +0300 Subject: added webrdp public code --- src/rdp/rdp_channels.c | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 src/rdp/rdp_channels.c (limited to 'src/rdp/rdp_channels.c') diff --git a/src/rdp/rdp_channels.c b/src/rdp/rdp_channels.c new file mode 100644 index 0000000..a4d95eb --- /dev/null +++ b/src/rdp/rdp_channels.c @@ -0,0 +1,39 @@ +/* BSD-2-Clause license + * + * Copyright (c) 2018-2023 NST , sss . + * + */ + +#include +#include "rdp_channels.h" +#include "rdp_clipboard.h" +#include "rdp_rail.h" + +void +rdp_on_channel_connected(void *context, const ChannelConnectedEventArgs *e) +{ + if (strcmp(e->name, CLIPRDR_SVC_CHANNEL_NAME) == 0) + { + rdp_cliprdr_init( + context, (CliprdrClientContext *)e->pInterface); + } + else if (strcmp(e->name, RAIL_SVC_CHANNEL_NAME) == 0) + { + rdp_rail_init(context, (RailClientContext *)e->pInterface); + } +} + +void +rdp_on_channel_disconnected( + void *context, const ChannelDisconnectedEventArgs *e) +{ + if (strcmp(e->name, CLIPRDR_SVC_CHANNEL_NAME) == 0) + { + rdp_cliprdr_uninit( + context, (CliprdrClientContext *)e->pInterface); + } + else if (strcmp(e->name, RAIL_SVC_CHANNEL_NAME) == 0) + { + rdp_rail_uninit(context, (RailClientContext *)e->pInterface); + } +} -- cgit v1.2.3