Your message dated Sat, 29 Dec 2007 06:08:32 +0200
with message-id <[EMAIL PROTECTED]>
and subject line Bug#420147: zero-padded available file works for me
has caused the attached Bug report to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere. Please contact me immediately.)
Debian bug tracking system administrator
(administrator, Debian Bugs database)
--- Begin Message ---
Package: dpkg
Version: 1.13.25
Severity: important
When the /var/lib/dpkg/available file is full of zeroes, some dpkg
incoations fail segfaulting. I attach informations from gdb running
dpkg-query that permitted to find why dpkg segfaults.
In such a case, dpkg should die segfaulting, but handle the bad file
gracefully and inform the user of
1/ what is happening
2/ how to repair
In this case:
# dpkg --clear-avail && aptitude update
--- System information. ---
Architecture: i386
Kernel: Linux 2.6.17-2-k7
Debian Release: lenny/sid
990 testing www.debian-multimedia.org
990 testing security.debian.org
990 testing ftp.nerim.net
502 stable ftp.nerim.net
501 unstable ftp.nerim.net
500 unstable ftp.nerim.net
500 stable security.debian.org
500 stable ftp.nerim.net
200 unstable www.debian-multimedia.org
200 stable www.debian-multimedia.org
--- Package information. ---
Depends (Version) | Installed
=======================-+-===========
|
--
[EMAIL PROTECTED]
OpenPGP 0xD9D50D8A
[EMAIL PROTECTED]:~$ gdb dpkg-query
GNU gdb 6.4.90-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...(no debugging symbols found)
Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
(gdb) run --list libc6
Starting program: /usr/bin/dpkg-query --list libc6
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
Program received signal SIGSEGV, Segmentation fault.
0xa7e80408 in vfprintf () from /lib/tls/i686/cmov/libc.so.6
(gdb) bt
#0 0xa7e80408 in vfprintf () from /lib/tls/i686/cmov/libc.so.6
#1 0xa7e9fec1 in vsnprintf () from /lib/tls/i686/cmov/libc.so.6
#2 0x0804f519 in ?? ()
#3 0x080e4480 in stderr ()
#4 0x00001000 in ?? ()
#5 0xafd572c0 in ?? ()
#6 0xafd579e0 in ?? ()
#7 0xa7eadae0 in obstack_free () from /lib/tls/i686/cmov/libc.so.6
#8 0x08053438 in ?? ()
#9 0xafd572c0 in ?? ()
#10 0xafd579e0 in ?? ()
#11 0x080f1978 in ?? ()
#12 0x080e68a8 in ?? ()
#13 0x00000001 in ?? ()
#14 0xa7fbeff4 in ?? () from /lib/ld-linux.so.2
#15 0x00000000 in ?? ()
(gdb) frame 1
#1 0xa7e9fec1 in vsnprintf () from /lib/tls/i686/cmov/libc.so.6
(gdb) info reg
eax 0xafd57130 -1344966352
ecx 0x6305af 6489519
edx 0xae4954c0 -1370925888
ebx 0xa7f6fff4 -1476984844
esp 0xafd57170 0xafd57170
ebp 0xafd57278 0xafd57278
esi 0xafd5718c -1344966260
edi 0x80e4480 135152768
eip 0xa7e9fec1 0xa7e9fec1 <vsnprintf+177>
eflags 0x10286 [ PF SF IF RF ]
cs 0x73 115
ss 0x7b 123
ds 0x7b 123
es 0x7b 123
fs 0x0 0
gs 0x33 51
(gdb) print *(char **)(0xafd57170 + 4)
$4 = 0xafd572c0 "erreur d'analyse syntaxique, dans le fichier
« /var/lib/dpkg/available » près de la ligne 1:\n EOF après le nom de champ
« %.*s »"
signature.asc
Description: Digital signature
--- End Message ---
--- Begin Message ---
Package: dpkg
Version: 1.14.7
On Wed, 2007-10-31 at 18:38:06 +0100, Pierre THIERRY wrote:
> notfound 420147 1.14.7
> tags 420147 +fixed
> thanks
>
> Scribit Ian Jackson dies 30/10/2007 hora 22:59:
> > I have tested adding 1Mby of nulls to my actual available file and
> > it worked for me.
>
> Works for me too, as I wished in the bug report. If I pad my available
> file with zeros, I get:
>
> $ dpkg-query --list libc6
> dpkg-query: parse error, in file `/var/lib/dpkg/available' near line 1:
> EOF after field name `'
Closing this now.
thanks,
guillem
--- End Message ---