media: uvcvideo: Constify descriptor buffers
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Thu, 20 Apr 2023 03:47:57 +0000 (06:47 +0300)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Fri, 9 Jun 2023 13:11:57 +0000 (14:11 +0100)
There is no need to modify the content of UVC descriptor buffers during
parsing. Make all the corresponding pointers const to avoid unintended
modifications.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Ricardo Ribalda <ribalda@chromium.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/media/usb/uvc/uvc_driver.c

index 1f40f92..08fcd2f 100644 (file)
@@ -221,7 +221,7 @@ static struct uvc_streaming *uvc_stream_new(struct uvc_device *dev,
 
 static int uvc_parse_format(struct uvc_device *dev,
        struct uvc_streaming *streaming, struct uvc_format *format,
-       struct uvc_frame *frames, u32 **intervals, unsigned char *buffer,
+       struct uvc_frame *frames, u32 **intervals, const unsigned char *buffer,
        int buflen)
 {
        struct usb_interface *intf = streaming->intf;
@@ -513,7 +513,7 @@ static int uvc_parse_streaming(struct uvc_device *dev,
        struct uvc_format *format;
        struct uvc_frame *frame;
        struct usb_host_interface *alts = &intf->altsetting[0];
-       unsigned char *_buffer, *buffer = alts->extra;
+       const unsigned char *_buffer, *buffer = alts->extra;
        int _buflen, buflen = alts->extralen;
        unsigned int nformats = 0, nframes = 0, nintervals = 0;
        unsigned int size, i, n, p;
@@ -1166,7 +1166,7 @@ static int uvc_parse_standard_control(struct uvc_device *dev,
 static int uvc_parse_control(struct uvc_device *dev)
 {
        struct usb_host_interface *alts = dev->intf->cur_altsetting;
-       unsigned char *buffer = alts->extra;
+       const unsigned char *buffer = alts->extra;
        int buflen = alts->extralen;
        int ret;