aboutsummaryrefslogtreecommitdiffstats
path: root/src/hci/keymap/keymap_se.c
diff options
context:
space:
mode:
authorMichael Brown <mcb30@ipxe.org>2022-02-15 16:41:19 +0000
committerMichael Brown <mcb30@ipxe.org>2022-02-15 16:46:58 +0000
commit419b2e71da689ded944c3789c87b7ae3646c7a7c (patch)
treef4010535ce5b80d1d556ec97822ec10268573c7b /src/hci/keymap/keymap_se.c
parent4a37b050081cbb9ea384a203502eca09a2d8038c (diff)
downloadipxe-419b2e71da689ded944c3789c87b7ae3646c7a7c.tar.gz
[console] Fix definition of unreachability for remapped keys
The AltGr remapping table is constructed to include only keys that are not reachable after applying the basic remapping table. The logic currently fails to include keys that are omitted entirely from the basic remapping table since they would map to a non-ASCII character. Fix this logic by allowing the remapping tables to include null mappings, which are then elided only at the point of constructing the C code fragment. Reported-by: Christian Nilsson <nikize@gmail.com> Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/hci/keymap/keymap_se.c')
-rw-r--r--src/hci/keymap/keymap_se.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/hci/keymap/keymap_se.c b/src/hci/keymap/keymap_se.c
index 6ca990444..9c6cf64a4 100644
--- a/src/hci/keymap/keymap_se.c
+++ b/src/hci/keymap/keymap_se.c
@@ -40,6 +40,11 @@ static struct keymap_key se_altgr[] = {
{ 0x2d, 0x5c }, /* '-' => '\\' */
{ 0x30, 0x7d }, /* '0' => '}' */
{ 0x32, 0x40 }, /* '2' => '@' */
+ { 0x34, 0x24 }, /* '4' => '$' */
+ { 0x37, 0x7b }, /* '7' => '{' */
+ { 0x38, 0x5b }, /* '8' => '[' */
+ { 0x39, 0x5d }, /* '9' => ']' */
+ { 0x5d, 0x7e }, /* ']' => '~' */
{ 0x71, 0x40 }, /* 'q' => '@' */
{ 0xdc, 0x7c }, /* Pseudo-'\\' => '|' */
{ 0, 0 }