--- sourceforge.net/trunk/rdesktop/rdp5.c 2003/06/17 08:44:32 423 +++ sourceforge.net/trunk/rdesktop/rdp5.c 2003/06/23 06:37:50 428 @@ -26,7 +26,7 @@ void rdp5_process(STREAM s, BOOL encryption) { - uint16 length, count; + uint16 length, count, x, y; uint8 type; uint8 *next; @@ -49,6 +49,10 @@ 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 @@ 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;