summaryrefslogtreecommitdiffstats
path: root/libxrdp/libxrdpinc.h
diff options
context:
space:
mode:
authorjsorg71 <jay.sorg@gmail.com>2018-10-11 22:09:20 -0700
committerGitHub <noreply@github.com>2018-10-11 22:09:20 -0700
commitae1514c1679e87edfdeba5ca3eb2b3659ef44b1a (patch)
tree9f07228ba6be179dd5c0a46e070ca86c16214ab4 /libxrdp/libxrdpinc.h
parent6049cf8dad919ded363c0dd5ac53a56e4c82b5ad (diff)
downloadxrdp-proprietary-ae1514c1679e87edfdeba5ca3eb2b3659ef44b1a.tar.gz
xrdp-proprietary-ae1514c1679e87edfdeba5ca3eb2b3659ef44b1a.zip
dynamic virtual channel improvements
remove not used chansrv <-> xrdp messages move static channel disable control into libxrdp remove some blocking read, write chansrv calls add drdynvc calls to libxrdp add drdynvc calls to chansrv channel cleanup
Diffstat (limited to 'libxrdp/libxrdpinc.h')
-rw-r--r--libxrdp/libxrdpinc.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/libxrdp/libxrdpinc.h b/libxrdp/libxrdpinc.h
index 38bd4b34..c236bec9 100644
--- a/libxrdp/libxrdpinc.h
+++ b/libxrdp/libxrdpinc.h
@@ -76,6 +76,14 @@ struct xrdp_session
struct source_info si;
};
+struct xrdp_drdynvc_procs
+{
+ int (*open_response)(intptr_t id, int chan_id, int creation_status);
+ int (*close_response)(intptr_t id, int chan_id);
+ int (*data_first)(intptr_t id, int chan_id, char *data, int bytes, int total_bytes);
+ int (*data)(intptr_t id, int chan_id, char *data, int bytes);
+};
+
struct xrdp_session *
libxrdp_init(tbus id, struct trans *trans);
int
@@ -195,6 +203,22 @@ libxrdp_send_to_channel(struct xrdp_session *session, int channel_id,
char *data, int data_len,
int total_data_len, int flags);
int
+libxrdp_disable_channel(struct xrdp_session *session, int channel_id,
+ int is_disabled);
+int
+libxrdp_drdynvc_open(struct xrdp_session *session, const char *name,
+ int flags, struct xrdp_drdynvc_procs *procs,
+ int *chan_id);
+int
+libxrdp_drdynvc_close(struct xrdp_session *session, int chan_id);
+int
+libxrdp_drdynvc_data_first(struct xrdp_session *session, int chan_id,
+ const char *data, int data_bytes,
+ int total_data_bytes);
+int
+libxrdp_drdynvc_data(struct xrdp_session *session, int chan_id,
+ const char *data, int data_bytes);
+int
libxrdp_orders_send_brush(struct xrdp_session *session,
int width, int height, int bpp, int type,
int size, char *data, int cache_id);