Package: lha
Version: 1.14i-10.2
Severity: grave
Justification: renders package unusable


[EMAIL PROTECTED]:~$ lha c t z
LHa: Fatal error: /tmp/lhMEjFue: File exists

strace output:
[EMAIL PROTECTED]:~$ strace lha c t z
execve("/usr/bin/lha", ["lha", "c", "t", "z"], [/* 18 vars */]) = 0
brk(0)                                  = 0x805e000
uname({sys="Linux", node="fan.ossfans.org", ...}) = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x4001e000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=27649, ...}) = 0
mmap2(NULL, 27649, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40020000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\260a\1"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1335912, ...}) = 0
mmap2(NULL, 1340944, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0x40027000
mmap2(0x40169000, 12288, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x142) = 
0x40169000
mmap2(0x4016c000, 9744, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 
0x4016c000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x4016f000
set_thread_area({entry_number:-1 -> 6, base_addr:0x4016f6b0, limit:1048575, 
seg_32bit:1, 
contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) 
= 0
mprotect(0x40169000, 4096, PROT_READ)   = 0
munmap(0x40020000, 27649)               = 0
brk(0)                                  = 0x805e000
brk(0x807f000)                          = 0x807f000
stat64("t", 0xbffff104)                 = -1 ENOENT (No such file or directory)
stat64("t.lzh", 0xbffff104)             = -1 ENOENT (No such file or directory)
stat64("t.lzs", 0xbffff104)             = -1 ENOENT (No such file or directory)
gettimeofday({1192098912, 755011}, NULL) = 0
getpid()                                = 15631
open("/tmp/lh9Ve6h3", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
rt_sigaction(SIGINT, {0x8049ee0, [INT], SA_RESTORER|SA_RESTART, 0x40051878}, 
{SIG_DFL}, 8) = 0
rt_sigaction(SIGHUP, {0x8049ee0, [HUP], SA_RESTORER|SA_RESTART, 0x40051878}, 
{SIG_DFL}, 8) = 0
umask(077)                              = 02
open("/tmp/lh9Ve6h3", O_RDWR|O_CREAT|O_EXCL, 0600) = -1 EEXIST (File exists)
write(2, "LHa: Fatal error: ", 18LHa: Fatal error: )      = 18
write(2, "/tmp/lh9Ve6h3: File exists\n", 27/tmp/lh9Ve6h3: File exists
) = 27
exit_group(1)                           = ?
Process 15631 detached


That's due to mkstemp call and O_EXCL in subsequent open of the same file.
I workaround this by removing O_EXCL, but I think it is either some
problem in glibc or code in lha needs to be reworked.

-- System Information:
Debian Release: lenny/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)

Versions of packages lha depends on:
ii  libc6                         2.6.1-1+b1 GNU C Library: Shared libraries

lha recommends no packages.

-- no debconf information



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to