summaryrefslogtreecommitdiffstats
path: root/libxrdp
diff options
context:
space:
mode:
Diffstat (limited to 'libxrdp')
-rw-r--r--libxrdp/xrdp_sec.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/libxrdp/xrdp_sec.c b/libxrdp/xrdp_sec.c
index f52a080d..d1bd49de 100644
--- a/libxrdp/xrdp_sec.c
+++ b/libxrdp/xrdp_sec.c
@@ -1232,6 +1232,15 @@ xrdp_sec_in_mcs_data(struct xrdp_sec *self)
}
in_uint8s(s, 39);
in_uint32_le(s, client_info->keylayout);
+ /* get keyboard type / subtype */
+ s->p = s->data;
+ if (!s_check_rem(s, 79 + 8))
+ {
+ return 1;
+ }
+ in_uint8s(s, 79);
+ in_uint32_le(s, client_info->keyboard_type);
+ in_uint32_le(s, client_info->keyboard_subtype);
s->p = s->data;
return 0;
}