Re: ld.so: don't use _dl_exit() for fatal errors

2017-01-24 Thread Philip Guenther
On Tue, 24 Jan 2017, Todd C. Miller wrote: > On Tue, 24 Jan 2017 15:39:49 +1000, Philip Guenther wrote: ... > > +static char ldso[] = "ld.so: "; > > Any reason this can't be const? Good catch, ok guenther@

Re: ld.so: don't use _dl_exit() for fatal errors

2017-01-24 Thread Todd C. Miller
On Tue, 24 Jan 2017 15:39:49 +1000, Philip Guenther wrote: I see this is already in but one minor nit below. > Index: dl_printf.c > === > RCS file: /cvs/src/libexec/ld.so/dl_printf.c,v > retrieving revision 1.18 > diff -u -p -r1.18 d

Re: ld.so: don't use _dl_exit() for fatal errors

2017-01-24 Thread Mark Kettenis
> Date: Tue, 24 Jan 2017 19:38:11 +1000 > From: Philip Guenther > > On Tue, 24 Jan 2017, Mark Kettenis wrote: > ... > > Looks ok to me. However: > > > > > @@ -57,6 +57,8 @@ int _dl_getcwd(char *, size_t); > > > int _dl_utrace(const char *, const void *, size_t); > > > int _dl_ge

Re: ld.so: don't use _dl_exit() for fatal errors

2017-01-24 Thread Philip Guenther
On Tue, 24 Jan 2017, Mark Kettenis wrote: ... > Looks ok to me. However: > > > @@ -57,6 +57,8 @@ int _dl_getcwd(char *, size_t); > > int_dl_utrace(const char *, const void *, size_t); > > int_dl_getentropy(char *, size_t); > > int_dl_sendsyslog(const char *, size_

Re: ld.so: don't use _dl_exit() for fatal errors

2017-01-24 Thread Mark Kettenis
> Date: Tue, 24 Jan 2017 15:39:49 +1000 > From: Philip Guenther > > So right now, ld.so simply exits iun various error cases, like unknown > relocation. This isn't great, as it's a normal exit when a linking > failure really should be an abnormal exit as from a fatal signal. If > "grep" has

ld.so: don't use _dl_exit() for fatal errors

2017-01-23 Thread Philip Guenther
So right now, ld.so simply exits iun various error cases, like unknown relocation. This isn't great, as it's a normal exit when a linking failure really should be an abnormal exit as from a fatal signal. If "grep" has a linking failure I want it to *die* instead of meekly returning non-zero.