From: Darren Kenny Date: Thu, 22 Oct 2020 13:54:06 +0000 (+0000) Subject: gnulib/regcomp: Fix uninitialized token structure X-Git-Tag: grub-2.06-rc1~119 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=75c3d3cec4f408848f575d6d5e30a95bd6313db0;p=thirdparty%2Fgrub.git gnulib/regcomp: Fix uninitialized token structure The code is assuming that the value of br_token.constraint was initialized to zero when it wasn't. While some compilers will ensure that, not all do, so it is better to fix this explicitly than leave it to chance. Fixes: CID 73749 Signed-off-by: Darren Kenny Reviewed-by: Daniel Kiper --- diff --git a/bootstrap.conf b/bootstrap.conf index 4c8c37c16..a7fc34eb3 100644 --- a/bootstrap.conf +++ b/bootstrap.conf @@ -79,7 +79,7 @@ cp -a INSTALL INSTALL.grub bootstrap_post_import_hook () { set -e - for patchname in fix-base64 fix-null-deref fix-unused-value fix-width no-abort; do + for patchname in fix-base64 fix-null-deref fix-uninit-structure fix-unused-value fix-width no-abort; do patch -d grub-core/lib/gnulib -p2 \ < "grub-core/lib/gnulib-patches/$patchname.patch" done diff --git a/conf/Makefile.extra-dist b/conf/Makefile.extra-dist index 0d3b74e8e..d83cde427 100644 --- a/conf/Makefile.extra-dist +++ b/conf/Makefile.extra-dist @@ -30,6 +30,7 @@ EXTRA_DIST += grub-core/genemuinitheader.sh EXTRA_DIST += grub-core/lib/gnulib-patches/fix-base64.patch EXTRA_DIST += grub-core/lib/gnulib-patches/fix-null-deref.patch +EXTRA_DIST += grub-core/lib/gnulib-patches/fix-uninit-structure.patch EXTRA_DIST += grub-core/lib/gnulib-patches/fix-unused-value.patch EXTRA_DIST += grub-core/lib/gnulib-patches/fix-width.patch EXTRA_DIST += grub-core/lib/gnulib-patches/no-abort.patch diff --git a/grub-core/lib/gnulib-patches/fix-uninit-structure.patch b/grub-core/lib/gnulib-patches/fix-uninit-structure.patch new file mode 100644 index 000000000..7b4d9f67a --- /dev/null +++ b/grub-core/lib/gnulib-patches/fix-uninit-structure.patch @@ -0,0 +1,11 @@ +--- a/lib/regcomp.c 2020-10-22 13:49:06.770168928 +0000 ++++ b/lib/regcomp.c 2020-10-22 13:50:37.026528298 +0000 +@@ -3662,7 +3662,7 @@ + Idx alloc = 0; + #endif /* not RE_ENABLE_I18N */ + reg_errcode_t ret; +- re_token_t br_token; ++ re_token_t br_token = {0}; + bin_tree_t *tree; + + sbcset = (re_bitset_ptr_t) calloc (sizeof (bitset_t), 1);