lkml.org 
[lkml]   [2004]   [Jul]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] Fix NR_KEYS off-by-one error
On Sat, Jul 17, 2004 at 01:35:59AM +0900, OGAWA Hirofumi wrote:
> KDGKBENT ioctl can use 256 entries (0-255), but it was defined as
> key_map[NR_KEYS] (NR_KEYS == 255). The code seems also thinking it's 256.
>
> key_map[0] = U(K_ALLOCATED);
> for (j = 1; j < NR_KEYS; j++)
> key_map[j] = U(K_HOLE);

The patch below might cause problems, though, because some apps may (in
old versions are) using a char variable to index up to NR_KEYS, which
leads to an endless loop.

>
> Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
> ---
>
> include/linux/keyboard.h | 2 +-
> 1 files changed, 1 insertion(+), 1 deletion(-)
>
> diff -puN include/linux/keyboard.h~nr_keys-off-by-one include/linux/keyboard.h
> --- linux-2.6.8-rc1/include/linux/keyboard.h~nr_keys-off-by-one 2004-07-16 06:20:10.000000000 +0900
> +++ linux-2.6.8-rc1-hirofumi/include/linux/keyboard.h 2004-07-16 06:20:10.000000000 +0900
> @@ -16,7 +16,7 @@
>
> #define NR_SHIFT 9
>
> -#define NR_KEYS 255
> +#define NR_KEYS 256
> #define MAX_NR_KEYMAPS 256
> /* This means 128Kb if all keymaps are allocated. Only the superuser
> may increase the number of keymaps beyond MAX_NR_OF_USER_KEYMAPS. */
> _
>

--
Vojtech Pavlik
SuSE Labs, SuSE CR
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:04    [W:0.065 / U:2.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site