From: Hans Verkuil Date: Tue, 25 Feb 2014 10:15:54 +0000 (-0300) Subject: [media] vivi: fix ENUM_FRAMEINTERVALS implementation X-Git-Tag: v3.15-rc1~85^2~156 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=ba38acb1423aa0bc9cd2b38229452b4056911130;p=karo-tx-linux.git [media] vivi: fix ENUM_FRAMEINTERVALS implementation This function never checked if width and height are correct. Add such a check so the v4l2-compliance tool returns OK again for vivi. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/platform/vivi.c b/drivers/media/platform/vivi.c index cfe7548c4493..3890f4f42a78 100644 --- a/drivers/media/platform/vivi.c +++ b/drivers/media/platform/vivi.c @@ -1121,7 +1121,11 @@ static int vidioc_enum_frameintervals(struct file *file, void *priv, if (!fmt) return -EINVAL; - /* regarding width & height - we support any */ + /* check for valid width/height */ + if (fival->width < 48 || fival->width > MAX_WIDTH || (fival->width & 3)) + return -EINVAL; + if (fival->height < 32 || fival->height > MAX_HEIGHT) + return -EINVAL; fival->type = V4L2_FRMIVAL_TYPE_CONTINUOUS;