File CVE-2024-47603.patch of Package gstreamer-plugins-good.36926
From b84a0f326350989b81b95f55ef513fdaa16487fa Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
Date: Mon, 30 Sep 2024 19:19:42 +0300
Subject: [PATCH 6/7] matroskademux: Skip over zero-sized Xiph stream headers
Thanks to Antonio Morales for finding and reporting the issue.
Fixes GHSL-2024-251
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3867
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8057>
---
diff -urp gst-plugins-good-1.8.3.orig/gst/matroska/matroska-ids.c gst-plugins-good-1.8.3/gst/matroska/matroska-ids.c
--- gst-plugins-good-1.8.3.orig/gst/matroska/matroska-ids.c 2016-03-24 07:36:37.000000000 -0400
+++ gst-plugins-good-1.8.3/gst/matroska/matroska-ids.c 2024-12-18 20:36:05.956762237 -0500
@@ -172,8 +172,10 @@ gst_matroska_parse_xiph_stream_headers (
if (offset + length[i] > codec_data_size)
goto error;
- hdr = gst_buffer_new_wrapped (g_memdup (p + offset, length[i]), length[i]);
- gst_buffer_list_add (list, hdr);
+ if (length[i] > 0) {
+ hdr = gst_buffer_new_wrapped (g_memdup (p + offset, length[i]), length[i]);
+ gst_buffer_list_add (list, hdr);
+ }
offset += length[i];
}