summaryrefslogtreecommitdiffstats
path: root/meta/recipes-support
diff options
context:
space:
mode:
authorHitendra Prajapati <hprajapati@mvista.com>2026-04-08 17:01:35 +0530
committerPaul Barker <paul@pbarker.dev>2026-04-10 11:53:18 +0100
commit4a4e0944fa5cc9ed1bc63949821aa0a042916a27 (patch)
tree7f9ff6a6a3f7a6fb6d37eb1578bf3b9de3914113 /meta/recipes-support
parentc1c8289d56ef5e185be7e49504573b6c6cae54f7 (diff)
downloadpoky-4a4e0944fa5cc9ed1bc63949821aa0a042916a27.tar.gz
vim: Fix CVE-2026-28419
Pick patch from [1] also mentioned in [2] [1] https://github.com/vim/vim/commit/9b7dfa2948c9e1e5e32a5812812d580c7879f4a0 [2] https://nvd.nist.gov/vuln/detail/CVE-2026-28419 (From OE-Core rev: 550a2a5e2d3b5aa08f50b89a0127187c3f76854c) Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com> Signed-off-by: Yoann Congal <yoann.congal@smile.fr> Signed-off-by: Paul Barker <paul@pbarker.dev>
Diffstat (limited to 'meta/recipes-support')
-rw-r--r--meta/recipes-support/vim/files/CVE-2026-28419.patch86
-rw-r--r--meta/recipes-support/vim/vim.inc1
2 files changed, 87 insertions, 0 deletions
diff --git a/meta/recipes-support/vim/files/CVE-2026-28419.patch b/meta/recipes-support/vim/files/CVE-2026-28419.patch
new file mode 100644
index 0000000000..91100a7e91
--- /dev/null
+++ b/meta/recipes-support/vim/files/CVE-2026-28419.patch
@@ -0,0 +1,86 @@
1From 9b7dfa2948c9e1e5e32a5812812d580c7879f4a0 Mon Sep 17 00:00:00 2001
2From: Christian Brabandt <cb@256bit.org>
3Date: Mon, 23 Feb 2026 19:35:25 +0000
4Subject: [PATCH] patch 9.2.0075: [security]: Buffer underflow with emacs tag
5 file
6
7Problem: When parsing a malformed Emacs-style tags file, a 1-byte
8 heap-buffer-underflow read occurs if the 0x7f delimiter
9 appears at the very beginning of a line. This happens
10 because the code attempts to scan backward for a tag
11 name from the delimiter without checking if space exists.
12 (ehdgks0627, un3xploitable)
13Solution: Add a check to ensure the delimiter (p_7f) is not at the
14 start of the buffer (lbuf) before attempting to isolate
15 the tag name.
16
17GitHub Advisory:
18https://github.com/vim/vim/security/advisories/GHSA-xcc8-r6c5-hvwv
19
20Signed-off-by: Christian Brabandt <cb@256bit.org>
21
22
23CVE: CVE-2026-28419
24Upstream-Status: Backport [https://github.com/vim/vim/commit/9b7dfa2948c9e1e5e32a5812812d580c7879f4a0]
25Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
26---
27 src/tag.c | 3 +++
28 src/testdir/test_taglist.vim | 16 ++++++++++++++++
29 src/version.c | 2 ++
30 3 files changed, 21 insertions(+)
31
32diff --git a/src/tag.c b/src/tag.c
33index 45af67f20d..d3a73997bb 100644
34--- a/src/tag.c
35+++ b/src/tag.c
36@@ -2023,6 +2023,9 @@ etag_fail:
37 }
38 else // second format: isolate tagname
39 {
40+ if (p_7f == lbuf)
41+ goto etag_fail;
42+
43 // find end of tagname
44 for (p = p_7f - 1; !vim_iswordc(*p); --p)
45 if (p == lbuf)
46diff --git a/src/testdir/test_taglist.vim b/src/testdir/test_taglist.vim
47index 506e64f7ae..42ecc4b76e 100644
48--- a/src/testdir/test_taglist.vim
49+++ b/src/testdir/test_taglist.vim
50@@ -316,4 +316,20 @@ func Test_evil_emacs_tagfile()
51 set tags&
52 endfunc
53
54+" This used to crash Vim due to a heap-buffer-underflow
55+func Test_emacs_tagfile_underflow()
56+ CheckFeature emacs_tags
57+ " The sequence from the crash artifact:
58+ let lines = [
59+ \ "\x0c\xff\xffT\x19\x8a",
60+ \ "\x19\x19\x0dtags\x19\x19\x19\x00\xff\xff\xff",
61+ \ "\x7f3\x0c"
62+ \ ]
63+ call writefile(lines, 'Xtags', 'D')
64+ set tags=Xtags
65+ call assert_fails(':tag a', 'E431:')
66+
67+ set tags&
68+endfunc
69+
70 " vim: shiftwidth=2 sts=2 expandtab
71diff --git a/src/version.c b/src/version.c
72index 7d265ab641..4f47ec2688 100644
73--- a/src/version.c
74+++ b/src/version.c
75@@ -724,6 +724,8 @@ static char *(features[]) =
76
77 static int included_patches[] =
78 { /* Add new patch number below this line */
79+/**/
80+ 1686,
81 /**/
82 1685,
83 /**/
84--
852.50.1
86
diff --git a/meta/recipes-support/vim/vim.inc b/meta/recipes-support/vim/vim.inc
index 713e277936..b74c4a49c1 100644
--- a/meta/recipes-support/vim/vim.inc
+++ b/meta/recipes-support/vim/vim.inc
@@ -20,6 +20,7 @@ SRC_URI = "git://github.com/vim/vim.git;branch=master;protocol=https \
20 file://CVE-2026-25749.patch \ 20 file://CVE-2026-25749.patch \
21 file://CVE-2026-26269.patch \ 21 file://CVE-2026-26269.patch \
22 file://CVE-2026-28418.patch \ 22 file://CVE-2026-28418.patch \
23 file://CVE-2026-28419.patch \
23 " 24 "
24 25
25PV .= ".1683" 26PV .= ".1683"