Skip to content

Commit 6bfcdd4

Browse files
committed
media: uvcvideo: Skip parsing frames of type UVC_VS_UNDEFINED in uvc_parse_format
jira VULN-9665 cve CVE-2024-53104 commit-author Benoit Sevens <[email protected]> commit ecf2b43 This can lead to out of bounds writes since frames of this type were not taken into account when calculating the size of the frames buffer in uvc_parse_streaming. Fixes: c0efd23 ("V4L/DVB (8145a): USB Video Class driver") Signed-off-by: Benoit Sevens <[email protected]> Cc: [email protected] Acked-by: Greg Kroah-Hartman <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Hans Verkuil <[email protected]> (cherry picked from commit ecf2b43) Signed-off-by: Greg Rose <[email protected]>
1 parent 9b4e8bb commit 6bfcdd4

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

drivers/media/usb/uvc/uvc_driver.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -645,7 +645,7 @@ static int uvc_parse_format(struct uvc_device *dev,
645645
/* Parse the frame descriptors. Only uncompressed, MJPEG and frame
646646
* based formats have frame descriptors.
647647
*/
648-
while (buflen > 2 && buffer[1] == USB_DT_CS_INTERFACE &&
648+
while (ftype && buflen > 2 && buffer[1] == USB_DT_CS_INTERFACE &&
649649
buffer[2] == ftype) {
650650
frame = &format->frame[format->nframes];
651651
if (ftype != UVC_VS_FRAME_FRAME_BASED)

0 commit comments

Comments
 (0)