Bug#755734: libc-bin - ldconfig fails if dirent->d_type is not correct
Package: libc-bin
Version: 2.19-7
Severity: normal
ldconfig uses the d_type field in the readdir(2) result as optimization.
If the field wrongly identifies symlinks as regular files, ldconfig
assumes that lstat(2) returns the same than stat(2) and aborts if it is
not the case.
It does
- call lstat, use this information to search the cache,
- call stat in readelf.c#process_file and override the old information,
- try to insert the new entry; this entry already exists and it calls
abort.
The 9p filesystem wrongly reports symlinks as regular files, so it
triggers this condition.
Bastian
-- System Information:
Debian Release: jessie/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 3.14-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages libc-bin depends on:
ii libc6 2.19-7
ii libcap2 1:2.22-1.2
libc-bin recommends no packages.
libc-bin suggests no packages.
-- no debconf information
Reply to: