From bc37e5aaac1b75c1cf66cf7c12eb8cfe1ca36997 Mon Sep 17 00:00:00 2001
From: Koichiro IWAO
Date: Wed, 31 Aug 2016 10:37:04 +0900
Subject: [PATCH 1/4] x11rdp: apply keyboard options
---
xorg/X11R7.6/rdp/rdpinput.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/xorg/X11R7.6/rdp/rdpinput.c b/xorg/X11R7.6/rdp/rdpinput.c
index 4c976417..6ef432e6 100644
--- a/xorg/X11R7.6/rdp/rdpinput.c
+++ b/xorg/X11R7.6/rdp/rdpinput.c
@@ -325,6 +325,10 @@ rdpLoadLayout(struct xrdp_client_info *client_info)
{
set.layout = client_info->layout;
}
+ if (strlen(client_info->options) > 0)
+ {
+ set.options = client_info->options;
+ }
retry:
/* free some stuff so we can call InitKeyboardDeviceStruct again */
From 644242fc5316332decdc13a4e5b29aea6e3f6ae1 Mon Sep 17 00:00:00 2001
From: Koichiro IWAO
Date: Wed, 31 Aug 2016 10:37:44 +0900
Subject: [PATCH 2/4] libxrdp: log keyboard options
---
libxrdp/xrdp_sec.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libxrdp/xrdp_sec.c b/libxrdp/xrdp_sec.c
index 40315a50..4aa9f27e 100644
--- a/libxrdp/xrdp_sec.c
+++ b/libxrdp/xrdp_sec.c
@@ -422,8 +422,8 @@ xrdp_load_keyboard_layout(struct xrdp_client_info *client_info)
list_delete(values);
LLOGLN(0, ("xrdp_load_keyboard_layout: model [%s] variant [%s] "
- "layout [%s]", client_info->model, client_info->variant,
- client_info->layout));
+ "layout [%s] options [%s]", client_info->model,
+ client_info->variant, client_info->layout, client_info->options));
g_file_close(fd);
}
else
From 248815964588c67e04857525425c05e3931bf198 Mon Sep 17 00:00:00 2001
From: Koichiro IWAO
Date: Thu, 1 Sep 2016 20:05:25 +0900
Subject: [PATCH 3/4] libxrdp: log keyboard type/subtype
---
libxrdp/xrdp_sec.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libxrdp/xrdp_sec.c b/libxrdp/xrdp_sec.c
index 4aa9f27e..8fe3d321 100644
--- a/libxrdp/xrdp_sec.c
+++ b/libxrdp/xrdp_sec.c
@@ -237,6 +237,9 @@ xrdp_load_keyboard_layout(struct xrdp_client_info *client_info)
char rdp_layout[256] = { 0 };
LLOGLN(0, ("xrdp_load_keyboard_layout:"));
+ LLOGLN(0, ("xrdp_load_keyboard_layout: keyboard_type [%d] keyboard_subtype [%d]",
+ client_info->keyboard_type, client_info->keyboard_subtype));
+
/* infer model/variant */
/* TODO specify different X11 keyboard models/variants */
g_memset(client_info->model, 0, sizeof(client_info->model));
From e2d4b657875124ec3fd20f75b65f8c239792b0e5 Mon Sep 17 00:00:00 2001
From: Koichiro IWAO
Date: Tue, 6 Sep 2016 15:33:08 +0900
Subject: [PATCH 4/4] libxrdp: cleanup log log in xrdp_load_keyboard_layout
---
libxrdp/xrdp_sec.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/libxrdp/xrdp_sec.c b/libxrdp/xrdp_sec.c
index 8fe3d321..cc8b8d16 100644
--- a/libxrdp/xrdp_sec.c
+++ b/libxrdp/xrdp_sec.c
@@ -236,7 +236,6 @@ xrdp_load_keyboard_layout(struct xrdp_client_info *client_info)
char keyboard_cfg_file[256] = { 0 };
char rdp_layout[256] = { 0 };
- LLOGLN(0, ("xrdp_load_keyboard_layout:"));
LLOGLN(0, ("xrdp_load_keyboard_layout: keyboard_type [%d] keyboard_subtype [%d]",
client_info->keyboard_type, client_info->keyboard_subtype));