musl - musl - an implementation of the standard library for Linux-based systems

index : musl
musl - an implementation of the standard library for Linux-based systems
summary refs log tree commit diff
path: root/src/stdio/getdelim.c
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2015年04月03日 16:35:43 -0400
committerRich Felker <dalias@aerifal.cx>2015年04月03日 16:35:43 -0400
commit2963a9f79406c829d5fd710a2e8fe510ee83c006 (patch)
tree3857b91c4dcc6ccf2f6d02da5829f76890387f31 /src/stdio/getdelim.c
parent5e25d87b09d1dafc527833d9b4e9a6de99b79aab (diff)
downloadmusl-2963a9f79406c829d5fd710a2e8fe510ee83c006.tar.gz
halt dynamic linker library search on errors resolving $ORIGIN in rpath
this change hardens the dynamic linker against the possibility of loading the wrong library due to inability to expand $ORIGIN in rpath. hard failures such as excessively long paths or absence of /proc (when resolving /proc/self/exe for the main executable's origin) do not stop the path search, but memory allocation failures and any other potentially transient failures do. to implement this change, the meaning of the return value of fixup_rpath function is changed. returning zero no longer indicates that the dso's rpath string pointer is non-null; instead, the caller needs to check. a return value of -1 indicates a failure that should stop further path search.
Diffstat (limited to 'src/stdio/getdelim.c')
0 files changed, 0 insertions, 0 deletions
generated by cgit v1.2.1 (git 2.18.0) at 2025年10月06日 19:12:55 +0000

AltStyle によって変換されたページ (->オリジナル) /