X-Git-Url: https://git.sesse.net/?p=rdpsrv;a=blobdiff_plain;f=proto.h;h=20710c024069a3ab28b4409ae2b7d64359e11779;hp=3fc91a5d907b944ddc94a6cb29a8ecfe2e8fc7d2;hb=40cde82f161a4891fb396e4f73087a9de7a5a978;hpb=48580be79f1c97788f7f3a92b9791056b9773058 diff --git a/proto.h b/proto.h index 3fc91a5..20710c0 100644 --- a/proto.h +++ b/proto.h @@ -36,9 +36,11 @@ BOOL iso_recv_connect(int server_sock); void iso_disconnect(void); /* licence.c */ void licence_process(STREAM s); +void send_authreq(); /* mcs.c */ STREAM mcs_init(int length); BOOL mcs_recv_connect_initial(); +void mcs_send_connect_response(); void mcs_send_to_channel(STREAM s, uint16 channel); void mcs_send(STREAM s); STREAM mcs_recv(uint16 * channel); @@ -60,11 +62,13 @@ void hexdump(unsigned char *p, int len); int load_licence(unsigned char **data); void save_licence(unsigned char *data, int length); /* rdp5.c */ +STREAM rdp5_init(int maxlen, BOOL encryption); +void rdp5_send(STREAM s, BOOL encryption); void rdp5_process(STREAM s, BOOL encryption); /* rdp.c */ +STREAM rdp_recv(uint8 * type); void rdp_out_unistr(STREAM s, char *string, int len); -void rdp_send_input(uint32 time, uint16 message_type, uint16 device_flags, uint16 param1, - uint16 param2); +void rdp_recv_input(STREAM s, uint32 *time, uint16 *message_type, uint16 *device_flags, uint16 *param1, uint16 *param2); void process_colour_pointer_pdu(STREAM s); void process_cached_pointer_pdu(STREAM s); void process_system_pointer_pdu(STREAM s); @@ -74,6 +78,7 @@ BOOL rdp_main_loop(void); BOOL rdp_connect(char *server, uint32 flags, char *domain, char *password, char *command, char *directory); void rdp_disconnect(void); +void rdp_send_bitmap_update(unsigned x, unsigned y, unsigned width, unsigned height, unsigned char *data); /* rdpdr.c */ void rdpdr_send_connect(void); void rdpdr_send_name(void); @@ -98,6 +103,7 @@ void wave_out_volume(uint16 left, uint16 right); void wave_out_write(STREAM s, uint16 tick, uint8 index); void wave_out_play(void); /* secure.c */ +void sec_encrypt(uint8 * data, int length); void sec_hash_48(uint8 * out, uint8 * in, uint8 * salt1, uint8 * salt2, uint8 salt); void sec_hash_16(uint8 * out, uint8 * in, uint8 * salt1, uint8 * salt2); void buf_out_uint32(uint8 * buffer, uint32 value); @@ -117,7 +123,9 @@ STREAM tcp_init(uint32 maxlen); void tcp_send(STREAM s); STREAM tcp_recv(STREAM s, uint32 length); BOOL tcp_recv_connect(int server_sock); +int tcp_connect(char *server, int port); void tcp_disconnect(void); +int tcp_get_socket(void); /* xclip.c */ void ui_clip_format_announce(uint8 * data, uint32 length); void ui_clip_handle_data(uint8 * data, uint32 length);