diff options
Diffstat (limited to 'libxrdp/libxrdp.h')
| -rw-r--r-- | libxrdp/libxrdp.h | 24 |
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 |
