From f31cfb5f31541bfdda1bbc1677c018bca699fd22 Mon Sep 17 00:00:00 2001 From: Erik Forsberg Date: Mon, 23 Jun 2003 06:37:50 +0000 Subject: [PATCH] Got (more) info from Jeroen Meijer. Fixed the mysterious opcode 8 using that information. Added a thankyou-comment. git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@427 423420c4-83ab-492f-b58f-81f9feb106b5 --- rdp5.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/rdp5.c b/rdp5.c index 62e3d13..f7b049d 100644 --- a/rdp5.c +++ b/rdp5.c @@ -26,7 +26,7 @@ extern uint8 *next_packet; void rdp5_process(STREAM s, BOOL encryption) { - uint16 length, count; + uint16 length, count, x, y; uint8 type; uint8 *next; @@ -49,6 +49,10 @@ rdp5_process(STREAM s, BOOL encryption) switch (type) { + /* Thanks to Jeroen Meijer for finding out the meaning of + most of the opcodes here. Especially opcode + 8! :) */ case 0: /* orders */ in_uint16_le(s, count); process_orders(s, count); @@ -66,6 +70,12 @@ rdp5_process(STREAM s, BOOL encryption) case 5: process_null_system_pointer_pdu(s); break; + case 8: + in_uint16_le(s, x); + in_uint16_le(s, y); + if (s_check(s)) + ui_move_pointer(x, y); + break; case 9: process_colour_pointer_pdu(s); break;