[Resolvconf-devel] Bug#775356: resolvconf: bashisms in /etc/dhcp/dhclient-enter-hooks.d/resolvconf: shopt and [[ ... ]]
Axel Beckert
abe at debian.org
Wed Jan 14 16:37:35 UTC 2015
Package: resolvconf
Severity: serious
Version: 1.76
Tags: ipv6
Justification: breaks IPv6 networking / bashism in '#!/bin/sh' sourced script (Policy §10.4)
Dear Thomas,
on a fresh Jessie installation, the file
/etc/dhcp/dhclient-enter-hooks.d/resolvconf is sourced by
isc-dhcp-client's /sbin/dhclient-script which has a "#!/bin/sh" shebang
line (since 4.3.1-2 / 27th of September 2014 / Shellshock) on which
resolvconf has no influence.
But /etc/dhcp/dhclient-enter-hooks.d/resolvconf contains two bashisms
which only appear if DHCPv6 is in use:
# dhclient -6 eth0
/sbin/dhclient-script: 55: /sbin/dhclient-script: shopt: not found
/sbin/dhclient-script: 60: /sbin/dhclient-script: [[: not found
/sbin/dhclient-script: 60: /sbin/dhclient-script: [[: not found
/sbin/dhclient-script: 60: /sbin/dhclient-script: [[: not found
/sbin/dhclient-script: 68: /sbin/dhclient-script: shopt: not found
#
The affected lines are:
https://sources.debian.net/src/resolvconf/1.76/etc/dhcp/dhclient-enter-hooks.d/resolvconf/#L55 and
https://sources.debian.net/src/resolvconf/1.76/etc/dhcp/dhclient-enter-hooks.d/resolvconf/#L60
Purging resolvconf fixes the issue.
I may come up with a proper patch later. But something like 'printf "%s"
"$nameserver" | grep -qi "^fe80::"' as test in the if clause should do
the trick. (Thanks to Goswin Brederlow for the idea!)
P.S.: No wicd involved this time. ;-)
-- System Information:
Debian Release: 8.0
APT prefers testing
APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Kernel: Linux 3.16.0-4-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages resolvconf depends on:
ii debconf [debconf-2.0] 1.5.55
ii ifupdown 0.7.52
ii init-system-helpers 1.22
ii initscripts 2.88dsf-58
ii lsb-base 4.1+Debian13+nmu1
resolvconf recommends no packages.
resolvconf suggests no packages.
-- debconf-show failed
-- System Information:
Debian Release: 8.0
APT prefers unstable
APT policy: (990, 'unstable'), (600, 'testing'), (500, 'buildd-unstable'), (400, 'stable'), (110, 'experimental'), (1, 'buildd-experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 3.17-rc5-amd64 (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
More information about the Resolvconf-devel
mailing list