cond test: Don't make assumptions about struct sigaction member order
On x86 (and apparently most other Linux architectures), the union with the signal handler is the first member, but on MIPS Linux, the first struct member is sa_flags (possibly done to be compatible with IRIX). Zero out the struct and fill in the field we want by name.
This fixes a compiler warning and a test failure on Debian mips64el since 2.61.x, also seen on mipsel and mips. The function pointer is placed in the sa_flags
member, leaving sa_handler
set to NULL
, which is presumably equivalent to SIG_DFL
, and then the SIGHUP
kills the test instead of being handled.
This is a regression (bug in a new test) since 2.61.x, so no need to backport.
Edited by Simon McVittie