[PATCH 1/3] input: console: skip unmappable keys
Ahmad Fatoum
ahmad at a3f.at
Mon Mar 29 07:18:08 BST 2021
The input console is in charge of turning input events to barebox
console keycodes. The keymap array it uses to do so has NR_KEYS
entries. Keycodes with values >= NR_KEYS can thus not be mapped.
Ignore them instead of evaluating arbitrary memory contents beyond
the buffer.
Signed-off-by: Ahmad Fatoum <ahmad at a3f.at>
---
drivers/input/input.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/input/input.c b/drivers/input/input.c
index bcc8667417d9..1df52f56c84d 100644
--- a/drivers/input/input.c
+++ b/drivers/input/input.c
@@ -165,6 +165,9 @@ static void input_console_notify(struct input_notifier *in,
if (ic->modstate[4] || ic->modstate[5])
modstate |= 1 << 2;
+ if (ev->code >= NR_KEYS)
+ return;
+
if (modstate & (1 << 1)) {
ascii = keycode_bb_keys[ev->code];
ascii = ascii >= 'a' ? CTL_CH(ascii) : 0;
--
2.30.0
More information about the barebox
mailing list