From 2fc6a76047000c7f59cb55825d09221c405a1e9e Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Tue, 7 Jul 2020 14:52:43 +0100 Subject: [PATCH] media: bcm2835-unicam: Ensure type is VIDEO_CAPTURE in [g|s]_selection [g|s]_selection pass in a buffer type that needs to be validated before passing on to the sensor subdev. Signed-off-by: Dave Stevenson --- drivers/media/platform/bcm2835/bcm2835-unicam.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/media/platform/bcm2835/bcm2835-unicam.c b/drivers/media/platform/bcm2835/bcm2835-unicam.c index 4118bf7..efa8344 100644 --- a/drivers/media/platform/bcm2835/bcm2835-unicam.c +++ b/drivers/media/platform/bcm2835/bcm2835-unicam.c @@ -1887,6 +1887,9 @@ static int unicam_s_selection(struct file *file, void *priv, .r = sel->r, }; + if (sel->type != V4L2_BUF_TYPE_VIDEO_CAPTURE) + return -EINVAL; + return v4l2_subdev_call(dev->sensor, pad, set_selection, NULL, &sdsel); } @@ -1901,6 +1904,9 @@ static int unicam_g_selection(struct file *file, void *priv, }; int ret; + if (sel->type != V4L2_BUF_TYPE_VIDEO_CAPTURE) + return -EINVAL; + ret = v4l2_subdev_call(dev->sensor, pad, get_selection, NULL, &sdsel); if (!ret) sel->r = sdsel.r; -- 2.7.4