Bug#488665: linux-image-2.6.25-2-686: cannot pass multiple arguments in #! line
Package: linux-image-2.6.25-2-686
Version: 2.6.25-3
Severity: normal
When running script which has multiple arguments in the #! line the
arguments are joined into one. This breaks scripts that require multiple
arguments passed to the interpreter.
Attaching test interpreter (test.c, to be compiled with "gcc test.c -o
test.o"), and test script to be runned by the test interpreter (test.sh)
Observed output of the script:
./test|-a -b -c|./test.sh
Expected outout of the script:
./test|-a|-b|-c|./test.sh
The interpreter test prints all its arguments interleaved with |.
This also disallows passing any arguments to scripts invoked with env.
Thanks
-- Package-specific info:
** Version:
Linux version 2.6.25-2-686 (Debian 2.6.25-3) (maks@debian.org) (gcc version 4.1.3 20080420 (prerelease) (Debian 4.1.2-22)) #1 SMP Wed May 14 16:42:03 UTC 2008
** Command line:
** Not tainted
** Kernel log:
** Loaded modules:
Module Size Used by
sbs 8544 0
video 19728 0
output 3712 1 video
sbshc 6784 1 sbs
battery 8448 0
wmi 7880 0
ipv6 241956 28
loop 16708 0
psmouse 35920 0
shpchp 29716 0
parport_pc 25860 0
serio_raw 6532 0
container 4736 0
i2c_piix4 8268 0
button 8240 0
parport 33868 1 parport_pc
i2c_core 22548 1 i2c_piix4
ac 4448 0
pci_hotplug 26980 1 shpchp
intel_agp 25084 1
agpgart 31720 1 intel_agp
evdev 11328 0
rtc 14272 0
pcspkr 3136 0
ext3 120264 4
jbd 43444 1 ext3
mbcache 8260 1 ext3
sd_mod 26072 6
ide_cd_mod 32864 0
cdrom 31872 1 ide_cd_mod
floppy 53284 0
pcnet32 31332 0
mii 5248 1 pcnet32
mptspi 17544 5
mptscsih 25056 1 mptspi
mptbase 55044 2 mptspi,mptscsih
piix 7176 0 [permanent]
ide_pci_generic 4228 0 [permanent]
ide_core 100312 3 ide_cd_mod,piix,ide_pci_generic
ata_generic 8004 0
scsi_transport_spi 22368 1 mptspi
libata 142032 1 ata_generic
scsi_mod 138508 5 sd_mod,mptspi,mptscsih,scsi_transport_spi,libata
dock 10448 1 libata
thermal 19100 0
processor 39660 1 thermal
fan 5636 0
** PCI devices:
-- System Information:
Debian Release: lenny/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.25-2-686 (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/bash
Versions of packages linux-image-2.6.25-2-686 depends on:
ii debconf [debconf-2.0] 1.5.22 Debian configuration management sy
ii initramfs-tools [linux-initra 0.92b tools for generating an initramfs
ii module-init-tools 3.4-1 tools for managing Linux kernel mo
Versions of packages linux-image-2.6.25-2-686 recommends:
ii libc6-i686 2.7-10 GNU C Library: Shared libraries [i
-- debconf information excluded
#!./test -a -b -c
#include <stdio.h>
int main(int argc, char** argv){
int i;
fprintf(stderr, argv[0]);
for(i=1;argc>i;i++){
fprintf(stderr, "|%s", argv[i]);
}
fprintf(stderr, "\n");
}
Reply to: