Avoiding error messages in evtest program

Hi,

I took evtest source code from beagleboard homepage but the following
error arise at runtime:

evdev.c(EVIOCGBIT): Suspicious buffer size 511, limiting output to 64
bytes. See http://userweb.kernel.org/~dtor/eviocgbit-bug.html

Please find below a patch and let me know any comments you have.

--- evtest.c 2009-01-11 12:40:50.000000000 -0600
+++ evtest.new.c 2009-01-11 12:41:52.000000000 -0600
@@ -333,14 +333,14 @@ int main (int argc, char **argv)
  printf("Input device name: \"%s\"\n", name);

  memset(bit, 0, sizeof(bit));
- ioctl(fd, EVIOCGBIT(0, EV_MAX), bit[0]);
+ ioctl(fd, EVIOCGBIT(0, sizeof(bit[0])), bit[0]);
  printf("Supported events:\n");

  for (i = 0; i < EV_MAX; i++)
      if (test_bit(i, bit[0])) {
       printf(" Event type %d (%s)\n", i, events[i] ? events[i] : "?");
       if (!i) continue;
- ioctl(fd, EVIOCGBIT(i, KEY_MAX), bit[i]);
+ ioctl(fd, EVIOCGBIT(i, sizeof(bit[i])), bit[i]);
       for (j = 0; j < KEY_MAX; j++)
        if (test_bit(j, bit[i])) {
                printf(" Event code %d (%s)\n", j, names[i] ?
(names[i][j] ? names[i][j] : "?") : "?");