This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH: Handle symlink to directory in ldconfig.


This is about the patch which you sent to libc-alpha about three years ago.
http://sources.redhat.com/ml/libc-alpha/2001-05/msg00084.html

This change causes a problem, when option -r is used.
Even when option -r is used, stat64 is performed using the original root directory.
This makes it impossible to use the paths which are not in the original root directory.

This is an example.

> tree tmproot/
tmproot/
|-- etc
|   `-- ld.so.conf
|-- lib
`-- usr
    |-- bar
    |   `-- lib
    |-- foo
    |   `-- lib
    |-- lib
    `-- local
        `-- lib

10 directories, 1 file
> cat tmproot/etc/ld.so.conf 
/usr/local/lib
/usr/foo/lib
> id -u
500
> ls /usr/foo/lib /usr/bar/lib
ls: /usr/foo/lib: No such file or directory
ls: /usr/bar/lib: No such file or directory
> ./build-glibc/elf/ldconfig -v -r tmproot /usr/bar/lib
./build-glibc/elf/ldconfig: Can't stat /usr/bar/lib: No such file or directory
./build-glibc/elf/ldconfig: Can't stat /usr/foo/lib: No such file or directory
/usr/local/lib:
/lib:
/usr/lib:



----
Hideki IWAMOTO  h-iwamoto@kit.hi-ho.ne.jp


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]