summaryrefslogtreecommitdiffstats
path: root/libxrdp/libxrdp.h
diff options
context:
space:
mode:
Diffstat (limited to 'libxrdp/libxrdp.h')
-rw-r--r--libxrdp/libxrdp.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/libxrdp/libxrdp.h b/libxrdp/libxrdp.h
index d9e5e6d1..4e7218d6 100644
--- a/libxrdp/libxrdp.h
+++ b/libxrdp/libxrdp.h
@@ -37,6 +37,7 @@
#include "file_loc.h"
#include "xrdp_client_info.h"
+
/* iso */
struct xrdp_iso
{
@@ -66,6 +67,16 @@ struct xrdp_mcs
struct list* channel_list;
};
+/* fastpath */
+struct xrdp_fastpath
+{
+ struct xrdp_sec* sec_layer; /* owner */
+ struct trans* trans;
+ struct xrdp_session* session;
+ int numEvents;
+ int secFlags;
+};
+
/* Encryption Methods */
#define CRYPT_METHOD_NONE 0x00000000
#define CRYPT_METHOD_40BIT 0x00000001
@@ -80,11 +91,13 @@ struct xrdp_mcs
#define CRYPT_LEVEL_HIGH 0x00000003
#define CRYPT_LEVEL_FIPS 0x00000004
+
/* sec */
struct xrdp_sec
{
struct xrdp_rdp* rdp_layer; /* owner */
struct xrdp_mcs* mcs_layer;
+ struct xrdp_fastpath* fastpath_layer;
struct xrdp_channel* chan_layer;
char server_random[32];
char client_random[64];
@@ -303,6 +316,8 @@ int APP_CC
xrdp_iso_send(struct xrdp_iso* self, struct stream* s);
int APP_CC
xrdp_iso_incoming(struct xrdp_iso* self);
+int APP_CC
+xrdp_iso_detect_tpkt(struct xrdp_iso *self, struct stream *s);
/* xrdp_mcs.c */
struct xrdp_mcs* APP_CC
@@ -528,4 +543,13 @@ int APP_CC
xrdp_channel_process(struct xrdp_channel* self, struct stream* s,
int chanid);
+/* xrdp_fastpath.c */
+struct xrdp_fastpath *APP_CC
+xrdp_fastpath_create(struct xrdp_sec *owner, struct trans *trans);
+void APP_CC
+xrdp_fastpath_delete(struct xrdp_fastpath *self);
+int APP_CC
+xrdp_fastpath_recv(struct xrdp_fastpath *self, struct stream *s);
+int APP_CC
+xrdp_fastpath_process_input_event(struct xrdp_fastpath *self, struct stream *s);
#endif