Hi Laurent and Gjorgji,

On Mon, Dec 07, 2015 at 10:45:39AM +0200, Laurent Pinchart wrote:
> From: Gjorgji Rosikopulos <grosikopu...@mm-sol.com>
> 
> Buffer length is needed for single plane as well, otherwise
> is uninitialized and behaviour is undetermined.

How about:

The v4l2_buffer length field must be passed as well from user to kernel and
back, otherwise uninitialised values will be used.

> 
> Signed-off-by: Gjorgji Rosikopulos <grosikopu...@mm-sol.com>
> Signed-off-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>

Acked-by: Sakari Ailus <sakari.ai...@linux.intel.com>

Shouldn't this be submitted to stable as well?

> ---
>  drivers/media/v4l2-core/v4l2-compat-ioctl32.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/media/v4l2-core/v4l2-compat-ioctl32.c 
> b/drivers/media/v4l2-core/v4l2-compat-ioctl32.c
> index 8fd84a67478a..b0faa1f7e3a9 100644
> --- a/drivers/media/v4l2-core/v4l2-compat-ioctl32.c
> +++ b/drivers/media/v4l2-core/v4l2-compat-ioctl32.c
> @@ -482,8 +482,10 @@ static int get_v4l2_buffer32(struct v4l2_buffer *kp, 
> struct v4l2_buffer32 __user
>                               return -EFAULT;
>                       break;
>               case V4L2_MEMORY_DMABUF:
> -                     if (get_user(kp->m.fd, &up->m.fd))
> +                     if (get_user(kp->m.fd, &up->m.fd) ||
> +                         get_user(kp->length, &up->length))
>                               return -EFAULT;
> +
>                       break;
>               }
>       }
> @@ -550,7 +552,8 @@ static int put_v4l2_buffer32(struct v4l2_buffer *kp, 
> struct v4l2_buffer32 __user
>                               return -EFAULT;
>                       break;
>               case V4L2_MEMORY_DMABUF:
> -                     if (put_user(kp->m.fd, &up->m.fd))
> +                     if (put_user(kp->m.fd, &up->m.fd) ||
> +                         put_user(kp->length, &up->length))
>                               return -EFAULT;
>                       break;
>               }

-- 
Kind regards,

Sakari Ailus
e-mail: sakari.ai...@iki.fi     XMPP: sai...@retiisi.org.uk
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to