harden dynamic linker library path search
authorRich Felker <dalias@aerifal.cx>
Thu, 2 Apr 2015 00:27:29 +0000 (20:27 -0400)
committerRich Felker <dalias@aerifal.cx>
Thu, 2 Apr 2015 00:27:29 +0000 (20:27 -0400)
commit5d1c8c995647914c8682498f613672b6b935ca15
tree7466d95e5fde8e52a630b5c875aeff63faca2933
parentfd427c4eaeed4d1099acc7b6188e41c6cfa5bca5
harden dynamic linker library path search

transient errors during the path search should not allow the search to
continue and possibly open the wrong file. this patch eliminates most
conditions where that could happen, but there is still a possibility
that $ORIGIN-based rpath processing will have an allocation failure,
causing the search to skip such a path. fixing this is left as a
separate task.

a small bug where overly-long path components caused an infinite loop
rather than being skipped/ignored is also fixed.
src/ldso/dynlink.c