1234567891011121314151617181920212223242526272829303132333435 |
- From f4a67a9a3033586edaee715d40d5992e02d32893 Mon Sep 17 00:00:00 2001
- From: Patrick Griffis <pgriffis@igalia.com>
- Date: Sat, 16 Nov 2024 12:07:30 -0600
- Subject: [PATCH] Fix heap buffer overflow in soup_content_sniffer_sniff
- Co-Author: Ar Jun <pkillarjun@protonmail.com>
- CVE: CVE-2025-32052
- Upstream-Status: Backport
- [https://gitlab.gnome.org/GNOME/libsoup/-/commit/f182429e5b1fc034050510da20c93256c4fa9652#500da7cfde649872c49169be34b03a1c42a53ddb]
- Upstream: https://git.openembedded.org/meta-openembedded/tree/meta-oe/recipes-support/libsoup/libsoup-2.4/CVE-2025-32052.patch
- Signed-off-by: Changqing Li <changqing.li@windriver.com>
- Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
- ---
- libsoup/soup-content-sniffer.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
- diff --git a/libsoup/soup-content-sniffer.c b/libsoup/soup-content-sniffer.c
- index 9554636..eac9e7b 100644
- --- a/libsoup/soup-content-sniffer.c
- +++ b/libsoup/soup-content-sniffer.c
- @@ -504,7 +504,7 @@ sniff_unknown (SoupContentSniffer *sniffer, SoupBuffer *buffer,
- guint index_pattern = 0;
- gboolean skip_row = FALSE;
-
- - while ((index_stream < resource_length) &&
- + while ((index_stream < resource_length - 1) &&
- (index_pattern <= type_row->pattern_length)) {
- /* Skip insignificant white space ("WS" in the spec) */
- if (type_row->pattern[index_pattern] == ' ') {
- --
- 2.34.1
|