ALSA: vx_core: off by one in vx_read_status()
authorDan Carpenter <dan.carpenter@oracle.com>
Fri, 21 Jun 2013 12:25:33 +0000 (15:25 +0300)
committerTakashi Iwai <tiwai@suse.de>
Fri, 21 Jun 2013 12:32:06 +0000 (14:32 +0200)
This code is older than git, and I haven't tested it, but if size ==
SIZE_MAX_STATUS then we would write one space past the end of the
rmh->Stat[] array.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/drivers/vx/vx_core.c

index c39961c11401a32777eac568b6b1e273d9ab5e7b..83596891cde4f1d6b1cb9fb7115d4646265bf85e 100644 (file)
@@ -205,7 +205,7 @@ static int vx_read_status(struct vx_core *chip, struct vx_rmh *rmh)
 
        if (size < 1)
                return 0;
-       if (snd_BUG_ON(size > SIZE_MAX_STATUS))
+       if (snd_BUG_ON(size >= SIZE_MAX_STATUS))
                return -EINVAL;
 
        for (i = 1; i <= size; i++) {