always terminate by SIGABRT when abort is called
authorRich Felker <dalias@aerifal.cx>
Sat, 1 Sep 2018 05:54:44 +0000 (01:54 -0400)
committerRich Felker <dalias@aerifal.cx>
Sat, 1 Sep 2018 06:06:10 +0000 (02:06 -0400)
commit9b14ad541068d4f7d0be9bcd1ff4c70090d868d3
treeee80fd4be7d6d4a96858e02d76e4b53f038bf35d
parent0b4c92b7acf63529858e7f8a3bb6505cd2b6e962
always terminate by SIGABRT when abort is called

Linux makes this surprisingly difficult, but it can be done. the trick
here is using the fact that we control the implementation of sigaction
to prevent changing the disposition of SIGABRT to anything but SIG_DFL
after abort has tried and failed to terminate the process simply by
calling raise(SIGABRT).
src/exit/abort.c
src/signal/sigaction.c