Package: debirf
Version: 0.33
Severity: normal
Since my system was updated for the recent shellshock Bash vulnerability (Bash
upgraded to version 4.2+dfsg-0.1+deb7u3), "debirf make" throws some perplexing
error output during system upgrade. This applies to debirf-version 0.33, but I
have read the changelog for 0.33-to-0.34 and it apparently hasn't been
addressed for that either.
The problem is irrespective of which is my default shell (debirf requires Bash
and hard-codes it in its shebang lines because it relies on several Bashisms).
>From what I've been able to grok from the logs (copied below) it seems to be
because the shellshock fix naively truncates any imported BASH_FUNC_xxx()
functions at or just after a ';' or a '&' rather than properly parsing it to
know where the var-definition sanely ends..(?) I find it surprising and hope
that (A) I am wrong, or (B) it is because they had to rush the fix. I will bet
on (A) for now, so I am reporting this here until I am *sure* it is actually a
Bash bug (well, Bash-bugfix bug). If it is, then this report should be shifted
to Bash of course.
Unfortunately I must redact the log due to in-house repo-details, etc - I hope
this is enough. If not, let me know and I will run a vanilla debirf template
for full log output when I have time:
> ..[snip]..
> run-parts: executing rescue/modules/a0_prep-root
> ..[snip]..
> Preparing to replace bash 4.2+dfsg-0.1 (using
> .../bash_4.2+dfsg-0.1+deb7u3_amd64.deb) ...
> /bin/bash: BASH_FUNC_failure(): line 0: syntax error near unexpected token `)'
> /bin/bash: BASH_FUNC_failure(): line 0: `BASH_FUNC_failure() () { echo "$@"
> 1>&2;'
> /bin/bash: error importing function definition for `BASH_FUNC_failure'
> /bin/bash: BASH_FUNC_debirf_info_comment(): line 0: syntax error near
> unexpected token `)'
> /bin/bash: BASH_FUNC_debirf_info_comment(): line 0:
> `BASH_FUNC_debirf_info_comment() () { echo "$@" | sed 's|^\(.\)|\# \1|' >>
> "${DEBIRF_ROOT}/etc/debirf/debirf.info"'
> /bin/bash: error importing function definition for
> `BASH_FUNC_debirf_info_comment'
> /bin/bash: BASH_FUNC_debirf_exec(): line 0: syntax error near unexpected
> token `)'
> /bin/bash: BASH_FUNC_debirf_exec(): line 0: `BASH_FUNC_debirf_exec() () { if
> [ "$ROOT_BUILD" = 'true' ]; then'
> /bin/bash: error importing function definition for `BASH_FUNC_debirf_exec'
> /bin/bash: BASH_FUNC_pack_rootfs(): line 0: syntax error near unexpected
> token `)'
> /bin/bash: BASH_FUNC_pack_rootfs(): line 0: `BASH_FUNC_pack_rootfs() () {
> set -o pipefail;'
> /bin/bash: error importing function definition for `BASH_FUNC_pack_rootfs'
> /bin/bash: BASH_FUNC_debirf_info_sh(): line 0: syntax error near unexpected
> token `)'
> /bin/bash: BASH_FUNC_debirf_info_sh(): line 0: `BASH_FUNC_debirf_info_sh() ()
> { echo "$@" >> "${DEBIRF_ROOT}/etc/debirf/debirf.info"'
> /bin/bash: error importing function definition for `BASH_FUNC_debirf_info_sh'
> /bin/bash: BASH_FUNC_msg(): line 0: syntax error near unexpected token `)'
> /bin/bash: BASH_FUNC_msg(): line 0: `BASH_FUNC_msg() () { echo "debirf> $@"
> 1>&2'
> /bin/bash: error importing function definition for `BASH_FUNC_msg'
> /bin/bash: BASH_FUNC_fakeroot_if_needed(): line 0: syntax error near
> unexpected token `)'
> /bin/bash: BASH_FUNC_fakeroot_if_needed(): line 0:
> `BASH_FUNC_fakeroot_if_needed() () { if [ "$ROOT_BUILD" = 'true' ]; then'
> /bin/bash: error importing function definition for
> `BASH_FUNC_fakeroot_if_needed'
> Unpacking replacement bash ...
> ..[snip]..
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]