1*4882a593SmuzhiyunFrom 03477085f9a33789ba6cca7cd49ab9326a1baa0e Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Darren Kenny <darren.kenny@oracle.com> 3*4882a593SmuzhiyunDate: Tue, 24 Nov 2020 18:04:22 +0000 4*4882a593SmuzhiyunSubject: [PATCH] gnulib/regcomp: Fix uninitialized re_token 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunThis issue has been fixed in the latest version of gnulib, so to 7*4882a593Smuzhiyunmaintain consistency, I've backported that change rather than doing 8*4882a593Smuzhiyunsomething different. 9*4882a593Smuzhiyun 10*4882a593SmuzhiyunFixes: CID 73828 11*4882a593Smuzhiyun 12*4882a593SmuzhiyunSigned-off-by: Darren Kenny <darren.kenny@oracle.com> 13*4882a593SmuzhiyunReviewed-by: Daniel Kiper <daniel.kiper@oracle.com> 14*4882a593Smuzhiyun[Add changes to generated files] 15*4882a593SmuzhiyunSigned-off-by: Stefan Sørensen <stefan.sorensen@spectralink.com> 16*4882a593Smuzhiyun--- 17*4882a593Smuzhiyun Makefile.in | 1 + 18*4882a593Smuzhiyun conf/Makefile.extra-dist | 1 + 19*4882a593Smuzhiyun .../lib/gnulib-patches/fix-regcomp-uninit-token.patch | 15 +++++++++++++++ 20*4882a593Smuzhiyun grub-core/lib/gnulib/regcomp.c | 6 +----- 21*4882a593Smuzhiyun 4 files changed, 18 insertions(+), 5 deletions(-) 22*4882a593Smuzhiyun create mode 100644 grub-core/lib/gnulib-patches/fix-regcomp-uninit-token.patch 23*4882a593Smuzhiyun 24*4882a593Smuzhiyundiff --git a/Makefile.in b/Makefile.in 25*4882a593Smuzhiyunindex d9da6e9..9442504 100644 26*4882a593Smuzhiyun--- a/Makefile.in 27*4882a593Smuzhiyun+++ b/Makefile.in 28*4882a593Smuzhiyun@@ -2743,6 +2743,7 @@ EXTRA_DIST = autogen.sh geninit.sh gentpl.py Makefile.util.def \ 29*4882a593Smuzhiyun grub-core/genemuinit.sh grub-core/genemuinitheader.sh \ 30*4882a593Smuzhiyun grub-core/lib/gnulib-patches/fix-null-deref.patch \ 31*4882a593Smuzhiyun grub-core/lib/gnulib-patches/fix-null-state-deref.patch \ 32*4882a593Smuzhiyun+ grub-core/lib/gnulib-patches/fix-regcomp-uninit-token.patch \ 33*4882a593Smuzhiyun grub-core/lib/gnulib-patches/fix-regexec-null-deref.patch \ 34*4882a593Smuzhiyun grub-core/lib/gnulib-patches/fix-uninit-structure.patch \ 35*4882a593Smuzhiyun grub-core/lib/gnulib-patches/fix-unused-value.patch \ 36*4882a593Smuzhiyundiff --git a/conf/Makefile.extra-dist b/conf/Makefile.extra-dist 37*4882a593Smuzhiyunindex d27d3a9..ffe6829 100644 38*4882a593Smuzhiyun--- a/conf/Makefile.extra-dist 39*4882a593Smuzhiyun+++ b/conf/Makefile.extra-dist 40*4882a593Smuzhiyun@@ -30,6 +30,7 @@ EXTRA_DIST += grub-core/genemuinitheader.sh 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun EXTRA_DIST += grub-core/lib/gnulib-patches/fix-null-deref.patch 43*4882a593Smuzhiyun EXTRA_DIST += grub-core/lib/gnulib-patches/fix-null-state-deref.patch 44*4882a593Smuzhiyun+EXTRA_DIST += grub-core/lib/gnulib-patches/fix-regcomp-uninit-token.patch 45*4882a593Smuzhiyun EXTRA_DIST += grub-core/lib/gnulib-patches/fix-regexec-null-deref.patch 46*4882a593Smuzhiyun EXTRA_DIST += grub-core/lib/gnulib-patches/fix-uninit-structure.patch 47*4882a593Smuzhiyun EXTRA_DIST += grub-core/lib/gnulib-patches/fix-unused-value.patch 48*4882a593Smuzhiyundiff --git a/grub-core/lib/gnulib-patches/fix-regcomp-uninit-token.patch b/grub-core/lib/gnulib-patches/fix-regcomp-uninit-token.patch 49*4882a593Smuzhiyunnew file mode 100644 50*4882a593Smuzhiyunindex 0000000..02e0631 51*4882a593Smuzhiyun--- /dev/null 52*4882a593Smuzhiyun+++ b/grub-core/lib/gnulib-patches/fix-regcomp-uninit-token.patch 53*4882a593Smuzhiyun@@ -0,0 +1,15 @@ 54*4882a593Smuzhiyun+--- a/lib/regcomp.c 2020-11-24 17:06:08.159223858 +0000 55*4882a593Smuzhiyun++++ b/lib/regcomp.c 2020-11-24 17:06:15.630253923 +0000 56*4882a593Smuzhiyun+@@ -3808,11 +3808,7 @@ 57*4882a593Smuzhiyun+ create_tree (re_dfa_t *dfa, bin_tree_t *left, bin_tree_t *right, 58*4882a593Smuzhiyun+ re_token_type_t type) 59*4882a593Smuzhiyun+ { 60*4882a593Smuzhiyun+- re_token_t t; 61*4882a593Smuzhiyun+-#if defined GCC_LINT || defined lint 62*4882a593Smuzhiyun+- memset (&t, 0, sizeof t); 63*4882a593Smuzhiyun+-#endif 64*4882a593Smuzhiyun+- t.type = type; 65*4882a593Smuzhiyun++ re_token_t t = { .type = type }; 66*4882a593Smuzhiyun+ return create_token_tree (dfa, left, right, &t); 67*4882a593Smuzhiyun+ } 68*4882a593Smuzhiyun+ 69*4882a593Smuzhiyundiff --git a/grub-core/lib/gnulib/regcomp.c b/grub-core/lib/gnulib/regcomp.c 70*4882a593Smuzhiyunindex 2545d3e..64a4fa7 100644 71*4882a593Smuzhiyun--- a/grub-core/lib/gnulib/regcomp.c 72*4882a593Smuzhiyun+++ b/grub-core/lib/gnulib/regcomp.c 73*4882a593Smuzhiyun@@ -3808,11 +3808,7 @@ static bin_tree_t * 74*4882a593Smuzhiyun create_tree (re_dfa_t *dfa, bin_tree_t *left, bin_tree_t *right, 75*4882a593Smuzhiyun re_token_type_t type) 76*4882a593Smuzhiyun { 77*4882a593Smuzhiyun- re_token_t t; 78*4882a593Smuzhiyun-#if defined GCC_LINT || defined lint 79*4882a593Smuzhiyun- memset (&t, 0, sizeof t); 80*4882a593Smuzhiyun-#endif 81*4882a593Smuzhiyun- t.type = type; 82*4882a593Smuzhiyun+ re_token_t t = { .type = type }; 83*4882a593Smuzhiyun return create_token_tree (dfa, left, right, &t); 84*4882a593Smuzhiyun } 85*4882a593Smuzhiyun 86*4882a593Smuzhiyun-- 87*4882a593Smuzhiyun2.14.2 88*4882a593Smuzhiyun 89