summaryrefslogtreecommitdiffstats
path: root/xorg/X11R7.6/rdp/rdpup.c
diff options
context:
space:
mode:
Diffstat (limited to 'xorg/X11R7.6/rdp/rdpup.c')
-rw-r--r--xorg/X11R7.6/rdp/rdpup.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/xorg/X11R7.6/rdp/rdpup.c b/xorg/X11R7.6/rdp/rdpup.c
index c0845a2e..338e0751 100644
--- a/xorg/X11R7.6/rdp/rdpup.c
+++ b/xorg/X11R7.6/rdp/rdpup.c
@@ -413,6 +413,7 @@ rdpup_process_msg(struct stream* s)
int param2;
int param3;
int param4;
+ int bytes;
in_uint16_le(s, msg_type);
if (msg_type == 103)
@@ -494,9 +495,28 @@ param4 %d\n", msg, param1, param2, param3, param4));
break;
}
}
+ else if (msg_type == 104)
+ {
+ in_uint32_le(s, bytes);
+ if (bytes > sizeof(g_rdpScreen.client_info))
+ {
+ bytes = sizeof(g_rdpScreen.client_info);
+ }
+ memcpy(&(g_rdpScreen.client_info), s->p - 4, bytes);
+ g_rdpScreen.client_info.size = bytes;
+ ErrorF("rdpup_process_msg: got client info bytes %d\n", bytes);
+ ErrorF(" jpeg support %d\n",
+ g_rdpScreen.client_info.jpeg);
+ ErrorF(" offscreen support %d\n",
+ g_rdpScreen.client_info.offscreen_support_level);
+ ErrorF(" offscreen size %d\n",
+ g_rdpScreen.client_info.offscreen_cache_size);
+ ErrorF(" offscreen entries %d\n",
+ g_rdpScreen.client_info.offscreen_cache_entries);
+ }
else
{
- rdpLog("unknown message type in rdpup_process_msg\n");
+ rdpLog("unknown message type in rdpup_process_msg %d\n", msg_type);
}
return 0;
}