patch: Fix CVE-2026-56289

This patch applies the upstream fix referenced by NVD in [2], using
the commit shown in [1].

[1] https://cgit.git.savannah.gnu.org/cgit/patch.git/commit/?id=faba04ef4f2b410257f76c1b9dc85e350929c4b9
[2] https://nvd.nist.gov/vuln/detail/CVE-2026-56289

(From OE-Core rev: b1540647185015c99fbf421d889547a6c10e7e29)

Signed-off-by: Hetvi Thakar <hthakar@cisco.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 48c1aa91e829a87c398e8c012cde45cd8c1aab0a)
Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Hetvi Thakar
2026-07-27 06:03:17 -07:00
committed by Richard Purdie
parent dc97ef25ad
commit f03efa1107
2 changed files with 37 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
From a40c835ab06314526d623e62ae27830d0ad88752 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Tue, 21 Apr 2026 13:16:10 -0700
Subject: [PATCH] =?UTF-8?q?Don=E2=80=99t=20infloop=20on=20null=20ranges?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Problem reported by Michał Majchrowicz.
* src/patch.c (locate_hunk): Dont attempt to optimize
matches of a null range. Instead, apply all the checks
we apply to non-null ranges.
CVE: CVE-2026-56289
Upstream-Status: Backport [https://cgit.git.savannah.gnu.org/cgit/patch.git/commit/?id=faba04ef4f2b410257f76c1b9dc85e350929c4b9]
(cherry picked from commit faba04ef4f2b410257f76c1b9dc85e350929c4b9)
Signed-off-by: Hetvi Thakar <hthakar@cisco.com>
---
src/patch.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/src/patch.c b/src/patch.c
index b348b5c..0e8d5c9 100644
--- a/src/patch.c
+++ b/src/patch.c
@@ -1146,9 +1146,6 @@ locate_hunk (lin fuzz)
lin max_offset = MAX(max_pos_offset, max_neg_offset);
lin min_offset;
- if (!pat_lines) /* null range matches always */
- return first_guess;
-
/* Do not try lines <= 0. */
if (first_guess <= max_neg_offset)
max_neg_offset = first_guess - 1;

View File

@@ -11,6 +11,7 @@ SRC_URI += "file://0001-Unset-need_charset_alias-when-building-for-musl.patch \
file://0001-Don-t-leak-temporary-file-on-failed-ed-style-patch.patch \
file://0001-Don-t-leak-temporary-file-on-failed-multi-file-ed.patch \
file://CVE-2019-20633.patch \
file://CVE-2026-56289.patch \
"
SRC_URI[md5sum] = "4c68cee989d83c87b00a3860bcd05600"