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

Bug#993772: /usr/bin/localedef: --list-archive /lib/locale/C.UTF-8/LC_COLLATE segfaults



Package: libc-bin
Version: 2.31-17
Severity: normal
File: /usr/bin/localedef

Dear Maintainer,

-- >8 --
$ localedef --list-archive /lib/locale/C.UTF-8/LC_COLLATE
Segmentation fault
-- >8 --

Not sure what it's supposed to do, but it's not this.

Traces attached ‒ strace from this system (sid),
but ltrace from Buster, seemingly no x32 upstream support.

Best,
наб

-- System Information:
Debian Release: bookworm/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: x32 (x86_64)
Foreign Architectures: amd64, i386

Kernel: Linux 5.10.0-8-amd64 (SMP w/2 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libc-bin depends on:
ii  libc6  2.31-17

Versions of packages libc-bin recommends:
ii  manpages  5.10-1

libc-bin suggests no packages.

-- no debconf information
execve("/bin/localedef", ["localedef", "--list-archive", "/lib/locale/C.UTF-8/LC_COLLATE"], 0xffa78ce0 /* 22 vars */) = 0
brk(NULL)                               = 0x57517000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xf7ee1000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=36301, ...}) = 0
mmap(NULL, 36301, PROT_READ, MAP_PRIVATE, 3, 0) = 0xf7ed8000
close(3)                                = 0
openat(AT_FDCWD, "/lib/x86_64-linux-gnux32/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\336\1\0004\0\0\0"..., 512) = 512
fstat(3, {st_mode=S_IFREG|0755, st_size=1785544, ...}) = 0
mmap(NULL, 1794324, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xf7d21000
mmap(0xf7d3d000, 1347584, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c000) = 0xf7d3d000
mmap(0xf7e86000, 307200, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x165000) = 0xf7e86000
mmap(0xf7ed1000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1af000) = 0xf7ed1000
mmap(0xf7ed5000, 8468, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xf7ed5000
close(3)                                = 0
arch_prctl(ARCH_SET_FS, 0xf7ee1f80)     = 0
mprotect(0xf7ed1000, 8192, PROT_READ)   = 0
mprotect(0x565be000, 24576, PROT_READ)  = 0
mprotect(0xf7f0c000, 4096, PROT_READ)   = 0
munmap(0xf7ed8000, 36301)               = 0
brk(NULL)                               = 0x57517000
brk(0x57538000)                         = 0x57538000
brk(0x57539000)                         = 0x57539000
openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=3041504, ...}) = 0
mmap(NULL, 2097152, PROT_READ, MAP_PRIVATE, 3, 0) = 0xf7b21000
mmap(NULL, 2596864, PROT_READ, MAP_PRIVATE, 3, 0x6d000) = 0xf78a7000
close(3)                                = 0
openat(AT_FDCWD, "/lib/locale/C.UTF-8/LC_COLLATE", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=1519554, ...}) = 0
stat("/lib/locale/C.UTF-8/LC_COLLATE", {st_mode=S_IFREG|0644, st_size=1519554, ...}) = 0
read(3, "\27\20\5 \23\0\0\0T\0\0\0X\0\0\0\\\0\0\0\\\4\0\08\302\3\0\364\375\3\0"..., 56) = 56
mmap(NULL, 536870912, PROT_NONE, MAP_SHARED, 3, 0) = 0xd78a7000
mmap(0xd78a7000, 1519554, PROT_READ, MAP_SHARED|MAP_FIXED, 3, 0) = 0xd78a7000
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0xd78a6ff0} ---
+++ killed by SIGSEGV +++
getenv("POSIXLY_CORRECT")                                                                                 = nil
setlocale(LC_MESSAGES, "")                                                                                = "en_GB.UTF-8"
setlocale(LC_CTYPE, "")                                                                                   = "en_GB.UTF-8"
textdomain("libc")                                                                                        = "libc"
argp_parse(0x564272b1d3a0, 3, 0x7ffda28dcc98, 0)                                                          = 0
open64("/lib/locale/C.UTF-8/LC_COLLATE", 0, 0373460)                                                      = 3
__fxstat64(1, 3, 0x7ffda28dc7d0)                                                                          = 0
__xstat64(1, "/lib/locale/C.UTF-8/LC_COLLATE", 0x7ffda28dc860)                                            = 0
read(3, "\027\020\005 \023", 56)                                                                          = 56
mmap64(0, 0x20000000, 0, 1)                                                                               = 0x7f1cbf6dc000
__getpagesize(0, 0x20000000, 0, 0x7f1cdfff0133)                                                           = 4096
mmap64(0x7f1cbf6dc000, 0x17283a, 1, 17)                                                                   = 0x7f1cbf6dc000
qsort(0x5642731ad3f0, 63, 16, 0x564272b06510 <no return ...>
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++

Attachment: signature.asc
Description: PGP signature


Reply to: