From 0390b0975e24158755e41060646eb4c4fe367a1e Mon Sep 17 00:00:00 2001 From: Hongxu Jia Date: Fri, 18 Aug 2017 03:31:51 -0400 Subject: bash: 4.3.30 -> 4.4 1. Rebase patches: - fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch - test-output.patch 2. Drop backported patches: - CVE-2016-9401.patch - fix-run-intl.patch 3. Add ${PN}-loadable for loadable builtins which is new features in Bash 4.4 4. The 4.4 fixed CVE-2017-5932 and CVE-2016-0634 - https://security-tracker.debian.org/tracker/CVE-2017-5932 - https://security-tracker.debian.org/tracker/CVE-2016-0634 5. The 4.4 installed include header files, fix bash-dev confilicts with lib32-bash-dev ..... $ bitbake lib32-core-image-sato-sdk ... |Error: Transaction check error: file /usr/include/bash/config.h conflicts between attempted installs |of lib32-bash-dev-4.4-r0.x86 and bash-dev-4.4-r0.core2_64 ...... (From OE-Core rev: 4097694b13cd5f0d68987551c3f9af80c87dc6ae) Signed-off-by: Hongxu Jia Signed-off-by: Richard Purdie --- ...roc-run-heredoc-run-execscript-run-test-f.patch | 158 +++------------------ 1 file changed, 17 insertions(+), 141 deletions(-) (limited to 'meta/recipes-extended/bash/bash/fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch') diff --git a/meta/recipes-extended/bash/bash/fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch b/meta/recipes-extended/bash/bash/fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch index 7f099ae0c6..9ac2461ab6 100644 --- a/meta/recipes-extended/bash/bash/fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch +++ b/meta/recipes-extended/bash/bash/fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch @@ -1,15 +1,7 @@ -From 2c30dff8ea8b17ad5ba9881e35ad1eba9c515f13 Mon Sep 17 00:00:00 2001 +From d1cd4c31ea0ed7406a3ad4bdaa211f581063f655 Mon Sep 17 00:00:00 2001 From: Hongxu Jia -Date: Thu, 26 Nov 2015 22:09:07 -0500 -Subject: [PATCH] fix run-coproc/run-heredoc/run-execscript/run-test/ failed - -FAIL: run-coproc -update test case:tests/coproc.right, tests/coproc.tests -git://git.sv.gnu.org/bash.git bash-4.4-testing - -FAIL: run-heredoc -update test case: tests/heredoc.right tests/heredoc3.sub -git://git.sv.gnu.org/bash.git bash-4.4-testing +Date: Tue, 15 Aug 2017 10:21:21 +0800 +Subject: [PATCH 2/2] fix run-execscript/run-test/ failed FAIL: run-execscript: the test suite should not be run as root @@ -21,149 +13,33 @@ Upstream-Status: Pending Signed-off-by: Hongxu Jia --- - tests/coproc.right | 5 +---- - tests/coproc.tests | 30 +++++++++++++++++++++++++----- - tests/heredoc.right | 5 ++--- - tests/heredoc3.sub | 3 ++- - tests/run-execscript | 3 ++- - tests/run-test | 3 ++- - 6 files changed, 34 insertions(+), 15 deletions(-) + tests/run-execscript | 3 ++- + tests/run-test | 3 ++- + 2 files changed, 4 insertions(+), 2 deletions(-) -diff --git a/tests/coproc.right b/tests/coproc.right -index 6d9deaa..94b001c 100644 ---- a/tests/coproc.right -+++ b/tests/coproc.right -@@ -1,11 +1,8 @@ --84575 - 63 60 - a b c --84577 - 63 60 - flop --./coproc.tests: line 22: 84577 Terminated coproc REFLECT { cat -; } --84579 -+coproc.tests: REFLECT: status 143 - 63 60 - FOO - 63 60 -diff --git a/tests/coproc.tests b/tests/coproc.tests -index 8be3563..d347eb7 100644 ---- a/tests/coproc.tests -+++ b/tests/coproc.tests -@@ -1,6 +1,13 @@ -+: ${TMPDIR:=/tmp} -+TMPOUT=${TMPDIR}/coproc-wait-$BASHPID -+ - coproc { echo a b c; sleep 2; } - --echo $COPROC_PID -+case $COPROC_PID in -+[0-9]*) ;; -+*) echo COPROC_PID not integer ;; -+esac -+ - echo ${COPROC[@]} - - read LINE <&${COPROC[0]} -@@ -10,7 +17,11 @@ wait $COPROC_PID - - coproc REFLECT { cat - ; } - --echo $REFLECT_PID -+case $REFLECT_PID in -+[0-9]*) ;; -+*) echo REFLECT_PID not integer ;; -+esac -+ - echo ${REFLECT[@]} - - echo flop >&${REFLECT[1]} -@@ -18,12 +29,21 @@ read LINE <&${REFLECT[0]} - - echo $LINE - --kill $REFLECT_PID --wait $REFLECT_PID -+{ sleep 1; kill $REFLECT_PID; } & -+wait $REFLECT_PID >$TMPOUT 2>&1 || echo "coproc.tests: REFLECT: status $?" -+grep 'Terminated.*coproc.*REFLECT' < $TMPOUT >/dev/null 2>&1 || { -+ echo "coproc.tests: wait for REFLECT failed" >&2 -+} -+rm -f $TMPOUT -+exec 2>&1 - - coproc xcase -n -u - --echo $COPROC_PID -+case $COPROC_PID in -+[0-9]*) ;; -+*) echo COPROC_PID not integer ;; -+esac -+ - echo ${COPROC[@]} - - echo foo >&${COPROC[1]} -diff --git a/tests/heredoc.right b/tests/heredoc.right -index 6abaa1f..8df91c5 100644 ---- a/tests/heredoc.right -+++ b/tests/heredoc.right -@@ -76,15 +76,14 @@ ENDEND - end ENDEND - hello - end hello --x star x - end x*x - helloEND - end helloEND - hello - \END - end hello\END --./heredoc3.sub: line 74: warning: here-document at line 72 delimited by end-of-file (wanted `EOF') --./heredoc3.sub: line 75: syntax error: unexpected end of file -+./heredoc3.sub: line 75: warning: here-document at line 73 delimited by end-of-file (wanted `EOF') -+./heredoc3.sub: line 76: syntax error: unexpected end of file - comsub here-string - ./heredoc.tests: line 105: warning: here-document at line 103 delimited by end-of-file (wanted `EOF') - hi -diff --git a/tests/heredoc3.sub b/tests/heredoc3.sub -index 73a111e..9d3d846 100644 ---- a/tests/heredoc3.sub -+++ b/tests/heredoc3.sub -@@ -49,9 +49,10 @@ hello - END - echo end hello - --cat </dev/null & touch 'x*x' - x star x - x*x -+wait $! - echo end 'x*x' - rm 'x*x' - diff --git a/tests/run-execscript b/tests/run-execscript -index f97ab21..0d00a1b 100644 +index de78644..38397c1 100644 --- a/tests/run-execscript +++ b/tests/run-execscript @@ -5,5 +5,6 @@ echo "warning: \`/tmp/bash-notthere' not being found or \`/' being a directory" echo "warning: produce diff output, please do not consider this a test failure" >&2 echo "warning: if diff output differing only in the location of the bash" >&2 echo "warning: binary appears, please do not consider this a test failure" >&2 --${THIS_SH} ./execscript > /tmp/xx 2>&1 -+rm -f /tmp/xx -+su -c "${THIS_SH} ./execscript > /tmp/xx 2>&1" test - diff /tmp/xx exec.right && rm -f /tmp/xx +-${THIS_SH} ./execscript > ${BASH_TSTOUT} 2>&1 ++rm -f ${BASH_TSTOUT} ++su -c "${THIS_SH} ./execscript > ${BASH_TSTOUT} 2>&1" test + diff ${BASH_TSTOUT} exec.right && rm -f ${BASH_TSTOUT} diff --git a/tests/run-test b/tests/run-test -index b2482c3..2e8f049 100644 +index d68791c..d6317d2 100644 --- a/tests/run-test +++ b/tests/run-test @@ -1,4 +1,5 @@ unset GROUPS UID 2>/dev/null --${THIS_SH} ./test.tests >/tmp/xx 2>&1 -+rm -f /tmp/xx -+su -c "${THIS_SH} ./test.tests >/tmp/xx 2>&1" test - diff /tmp/xx test.right && rm -f /tmp/xx +-${THIS_SH} ./test.tests >${BASH_TSTOUT} 2>&1 ++rm -f ${BASH_TSTOUT} ++su -c "${THIS_SH} ./test.tests > ${BASH_TSTOUT} 2>&1" test + diff ${BASH_TSTOUT} test.right && rm -f ${BASH_TSTOUT} -- -1.9.1 +1.8.3.1 -- cgit v1.2.3-54-g00ecf