}
}
+void
+handle_font2_pdu(STREAM s)
+{
+ printf("FONT2 PDU, responding with magic\n");
+
+ s = rdp_init_data(8);
+ out_uint16_le(s, 0);
+ out_uint16_le(s, 0);
+ out_uint16_le(s, 3);
+ out_uint16_le(s, 4);
+ s_mark_end(s);
+ rdp_send_data(s, 0x28);
+}
+
struct ServerInitialization {
unsigned short width;
unsigned short height;
for ( ;; ) {
uint8 type, data_pdu_type;
+ uint16 id;
STREAM s;
fd_set readfs;
handle_control_pdu(s);
break;
case RDP_DATA_PDU_SYNCHRONISE:
- rdp_send_synchronise(s);
+ in_uint16_le(s, id);
+ printf("Synchronise, id=%u\n", id);
+ rdp_send_synchronise(id);
+ break;
+ case RDP_DATA_PDU_FONT2:
+ handle_font2_pdu(s);
break;
default:
printf("Unknown data PDU type %u\n", data_pdu_type);