make dynamic linker accept : or \n as path separator
authorRich Felker <dalias@aerifal.cx>
Sat, 20 Apr 2013 15:51:58 +0000 (11:51 -0400)
committerRich Felker <dalias@aerifal.cx>
Sat, 20 Apr 2013 15:51:58 +0000 (11:51 -0400)
commit8c203eae1e90f646a3c7c40d9700d55de2163df1
tree0f3f31b41b3b946e32a80a710b0b0d5303964d79
parent7bec92e793d4b8a349796848cf43c7329b0f2ed0
make dynamic linker accept : or \n as path separator

this allows /etc/ld-musl-$(ARCH).path to contain one path per line,
which is much more convenient for users than the :-delimited format,
which was a source of repeated and unnecessary confusion. for
simplicity, \n is also accepted in environment variables, though it
should probably not be used there.

at the same time, issues with overly long paths invoking UB or getting
truncated have been fixed. such issues should not have arisen with the
environment (which is size-limited) but could have been generated by a
path file larger than 2**31 bytes in length.
src/ldso/dynlink.c