Package: bpalogin Version: 2.0.2-9 Severity: normal Tags: patch When /bin/sh points to /bin/dash, bpalogin-configure doesn't work -- instead it prints out messages like: > read: 63: arg count > read: 191: arg count and exits without prompting for anything.
It is relying on bash to assign a response to the REPLY variable. dash's read command must have a variable name passed to it. -- System Information: Debian Release: 4.0 APT prefers testing APT policy: (500, 'testing'), (500, 'stable') Architecture: i386 (i586) Shell: /bin/sh linked to /bin/dash Kernel: Linux 2.6.18-4-486 Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8) Versions of packages bpalogin depends on: ii libc6 2.3.6.ds1-13 GNU C Library: Shared libraries ii lsb-base 3.1-23.1 Linux Standard Base 3.1 init scrip Versions of packages bpalogin recommends: ii dhcp-client 2.0pl5-19.5 DHCP Client -- no debconf information
--- /usr/sbin/bpalogin-configure 2006-07-10 15:45:09.000000000 +1000 +++ /tmp/bp/bpalogin-configure 2007-04-08 22:27:30.000000000 +1000 @@ -23,7 +23,7 @@ fi eval `cat "$CONFIG_FILE" | \ -(while read +(while read REPLY do case "$REPLY" in '# '*) @@ -85,7 +85,7 @@ for var in $variables do echo -n "Enter $var [`eval 'echo $'$var`]: " - if read && [ -n "$REPLY" ] + if read REPLY && [ -n "$REPLY" ] then eval "$var=\"$REPLY\"" fi @@ -99,7 +99,7 @@ then echo echo -n "Would you like to configure additional options? (y/n): " - read + read REPLY case "$REPLY" in [Yy]*) cat <<EOF @@ -120,7 +120,7 @@ for var in $disabled do echo -n "Enter $var [`eval 'echo $'$var`]: " - if read + if read REPLY then if [ -n "$REPLY" ] then @@ -146,7 +146,7 @@ ## # Create the new bpalogin.conf file cat "$CONFIG_FILE" | \ -(while read; +(while read REPLY; do case "$REPLY" in '# '*) @@ -193,7 +193,7 @@ echo echo "New configuration successfully saved in $NEW_CONFIG" echo -n "Overwrite $CONFIG_FILE with this file? (y/n) " -read +read REPLY case "$REPLY" in [Yy]*)