[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#403667: invalid syntax in /usr/share/initramfs-tools/scripts/init-top/framebuffer



Package: initramfs-tools
Version: 0.85c
Severity: important
Tags: patch

The file /usr/share/initramfs-tools/scripts/init-top/framebuffer has invalid 
syntax in parse_video_opts at line 47:

		elif [ "$opt" != "${opt#[[:digit:]]*x[[:digit:]]}"; then

is lacking a closing ']'

Also this function does not handle options of the form key:value.

The attached patch fixes these issues.

-- Package-specific info:
-- /proc/cmdline
root=/dev/hda16 video=matroxfb:vesa:0x1BB,fv:75 ro quiet resume=/dev/hda5 splash 

-- /proc/filesystems
	cramfs
	reiserfs
	ext3
	vfat

-- lsmod
Module                  Size  Used by
nfs                   203980  0 
lockd                  55240  1 nfs
nfs_acl                 3904  1 nfs
sunrpc                139772  3 nfs,lockd,nfs_acl
ppdev                   8964  0 
lp                     11300  0 
autofs4                20164  1 
binfmt_misc            11272  1 
mga                    58624  2 
drm                    61844  3 mga
button                  6928  0 
ac                      5508  0 
battery                 9924  0 
xt_pkttype              2304  0 
iptable_raw             2432  0 
xt_CLASSIFY             2304  0 
xt_CONNMARK             2752  0 
xt_MARK                 2752  0 
ipt_REJECT              5568  0 
xt_length               2368  0 
xt_connmark             2432  0 
ipt_owner               2368  0 
ipt_recent              8784  0 
ipt_iprange             2176  0 
xt_physdev              3344  0 
bridge                 49692  1 xt_physdev
xt_policy               3904  0 
xt_multiport            3712  0 
xt_conntrack            2944  0 
iptable_mangle          3200  0 
ip_nat_irc              3008  0 
ip_nat_tftp             2240  0 
ip_nat_ftp              3648  0 
iptable_nat             7428  0 
ip_nat                 17260  4 ip_nat_irc,ip_nat_tftp,ip_nat_ftp,iptable_nat
ip_conntrack_irc        7088  1 ip_nat_irc
ip_conntrack_tftp       4664  1 ip_nat_tftp
ip_conntrack_ftp        8112  1 ip_nat_ftp
ip_conntrack           49504  11 xt_CONNMARK,xt_connmark,xt_conntrack,ip_nat_irc,ip_nat_tftp,ip_nat_ftp,iptable_nat,ip_nat,ip_conntrack_irc,ip_conntrack_tftp,ip_conntrack_ftp
nfnetlink               7128  2 ip_nat,ip_conntrack
iptable_filter          3392  0 
ip_tables              13412  4 iptable_raw,iptable_mangle,iptable_nat,iptable_filter
x_tables               13636  16 xt_pkttype,xt_CLASSIFY,xt_CONNMARK,xt_MARK,ipt_REJECT,xt_length,xt_connmark,ipt_owner,ipt_recent,ipt_iprange,xt_physdev,xt_policy,xt_multiport,xt_conntrack,iptable_nat,ip_tables
ipv6                  228064  14 
nls_iso8859_1           4544  2 
nls_cp850               5376  2 
vfat                   12416  2 
fat                    47260  1 vfat
dm_snapshot            15840  0 
dm_mirror              19600  0 
dm_mod                 50776  2 dm_snapshot,dm_mirror
it87                   19236  0 
hwmon_vid               3072  1 it87
lm90                   12452  0 
i2c_isa                 5440  1 it87
i2c_viapro              8532  0 
ppp_generic            26324  0 
slhc                    7104  1 ppp_generic
loop                   15496  0 
tsdev                   7808  0 
snd_via82xx            26328  0 
snd_ac97_codec         83360  1 snd_via82xx
snd_seq_dummy           4164  0 
snd_bt87x              14500  0 
snd_seq_oss            29120  0 
psmouse                35336  0 
snd_pcm_oss            39200  0 
snd_mixer_oss          15552  1 snd_pcm_oss
snd_seq_midi            8544  0 
rtc                    12788  0 
serio_raw               6980  0 
parport_pc             32612  1 
parport                33672  3 ppdev,lp,parport_pc
snd_pcm                68996  4 snd_via82xx,snd_ac97_codec,snd_bt87x,snd_pcm_oss
snd_seq_midi_event      7488  2 snd_seq_oss,snd_seq_midi
snd_seq                46224  6 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event
snd_timer              21316  2 snd_pcm,snd_seq
snd_mpu401              7848  0 
snd_mpu401_uart         8384  2 snd_via82xx,snd_mpu401
snd_rawmidi            23200  2 snd_seq_midi,snd_mpu401_uart
snd_seq_device          8140  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq,snd_rawmidi
analog                 11104  0 
snd                    47524  13 snd_via82xx,snd_ac97_codec,snd_bt87x,snd_seq_oss,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq,snd_timer,snd_mpu401,snd_mpu401_uart,snd_rawmidi,snd_seq_device
pcspkr                  3392  0 
soundcore               9568  1 snd
ide_floppy             16512  0 
evdev                   9408  1 
ext3                  120392  10 
jbd                    52968  1 ext3
mbcache                 8644  1 ext3
8139cp                 22336  0 
bt878                  10680  0 
ehci_hcd               28488  0 
ide_cd                 36576  0 
cdrom                  33056  1 ide_cd
8139too                25600  0 
mii                     5696  2 8139cp,8139too
gameport               14920  2 snd_via82xx,analog
snd_ac97_bus            2688  1 snd_ac97_codec
snd_page_alloc          9928  3 snd_via82xx,snd_bt87x,snd_pcm
via_ircc               23956  0 
irda                  163580  1 via_ircc
crc_ccitt               2560  1 irda
shpchp                 33312  0 
pci_hotplug            29056  1 shpchp
rt2500                153060  1 
uhci_hcd               21448  0 
usbcore               113412  3 ehci_hcd,uhci_hcd
bttv                  160244  1 bt878
video_buf              23428  1 bttv
firmware_class         10048  1 bttv
ir_common              28164  1 bttv
compat_ioctl32          1792  1 bttv
i2c_algo_bit            8776  1 bttv
btcx_risc               5064  1 bttv
tveeprom               14160  1 bttv
i2c_core               20096  7 it87,lm90,i2c_isa,i2c_viapro,bttv,i2c_algo_bit,tveeprom
videodev               21440  1 bttv
v4l1_compat            12356  1 videodev
v4l2_common            20736  2 bttv,videodev
via_agp                 9984  1 
agpgart                30216  2 drm,via_agp
thermal                13896  1 
processor              29128  1 thermal
fan                     5124  1 
reiserfs              214080  0 
ide_disk               15168  14 
ide_generic             1728  0 [permanent]
via82cxxx               8708  0 [permanent]
ide_core              110984  5 ide_floppy,ide_cd,ide_disk,ide_generic,via82cxxx
vga16fb                11980  1 
vgastate                8192  1 vga16fb

-- kernel-img.conf
# Do not create symbolic links in /
do_symlinks = yes
relative_links = yes
do_bootloader = no
do_bootfloppy = no
do_initrd = yes
link_in_boot = no
postinst_hook = /usr/sbin/update-grub
postrm_hook   = /usr/sbin/update-grub


-- System Information:
Debian Release: 4.0
  APT prefers testing
  APT policy: (900, 'testing'), (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-3-k7
Locale: LANG=en_GB, LC_CTYPE=en_GB (charmap=ISO-8859-1)

Versions of packages initramfs-tools depends on:
ii  busybox                       1:1.1.3-3  Tiny utilities for small and embed
ii  cpio                          2.6-17     GNU cpio -- a program to manage ar
ii  klibc-utils                   1.4.30-1   small statically-linked utilities 
ii  module-init-tools             3.3-pre3-1 tools for managing Linux kernel mo
ii  udev                          0.103-1    /dev/ and hotplug management daemo

initramfs-tools recommends no packages.

-- no debconf information
--- /usr/share/initramfs-tools/scripts/init-top/framebuffer	2006-11-14 06:54:08.000000000 +0000
+++ framebuffer.fixed_parse_video_opts	2006-12-18 19:49:44.000000000 +0000
@@ -43,8 +43,11 @@
 		# Already in the "<arg>=<value>" form
 		if [ "$opt" != "${opt#*=}" ]; then
 			echo -n "$opt "
+		# In the "<arg>:<value>" form
+		elif [ "$opt" != "${opt#*:}" ]; then
+			echo -n "${opt/:/=} "
 		# Presumably a modevalue without the "mode=" prefix
-		elif [ "$opt" != "${opt#[[:digit:]]*x[[:digit:]]}"; then
+		elif [ "$opt" != "${opt#[[:digit:]]*x[[:digit:]]}" ]; then
 			echo -n "mode=$opt "
 		# Presumably a boolean
 		else

Reply to: