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 »"

Attachment: 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 ---

Reply via email to