Skip to content
Commit c476030a authored by Niko Tyni's avatar Niko Tyni
Browse files

Restore SIGUNUSED on glibc >= 2.26 to preserve ABI compatibility

SIGUNUSED is a long deprecated alias to SIGSYS that was removed in
glibc 2.26. Unfortunately the Perl ABI contains arrays of signal names
and numbers of length SIG_SIZE.  If an XS module is built with an older
glibc but Perl has been rebuilt, the XS module can iterate these arrays
out of bounds because it has a bigger SIG_SIZE compiled in.

The list of architectures needing this was gathered from the
debian/cross/*/config.sh.static files. SIGUNUSED is 31 (=SIGSYS) on all
of these architectures, so we hardcode that.

Closes: #875927
parent 3e2a41d6
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment