From: Thomas Deutschmann Date: Fri, 4 Oct 2019 14:14:43 +0000 (+0200) Subject: dev-libs/openssl: check pre requirements for USE=sctp X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=472f2458fc5aa5209a454fd91643cb2a7ffdc869;p=gentoo.git dev-libs/openssl: check pre requirements for USE=sctp FEATURES=test and USE=sctp requires net.sctp.auth_enable=1 or test_ssl_new will fail with "Ensure SCTP AUTH chunks are enabled in kernel". Package-Manager: Portage-2.3.76, Repoman-2.3.17 Signed-off-by: Thomas Deutschmann --- diff --git a/dev-libs/openssl/openssl-1.1.1d-r1.ebuild b/dev-libs/openssl/openssl-1.1.1d-r1.ebuild index db1ec434fd73..1ddfa7ff16f1 100644 --- a/dev-libs/openssl/openssl-1.1.1d-r1.ebuild +++ b/dev-libs/openssl/openssl-1.1.1d-r1.ebuild @@ -55,6 +55,22 @@ MULTILIB_WRAPPED_HEADERS=( usr/include/openssl/opensslconf.h ) +pkg_setup() { + [[ ${MERGE_TYPE} == binary ]] && return + + # must check in pkg_setup; sysctl don't work with userpriv! + if has test ${FEATURES}; then + if use sctp; then + # test_ssl_new will fail with "Ensure SCTP AUTH chunks are enabled in kernel" + # if sctp.auth_enable is not enabled. + local sctp_auth_status=$(sysctl -n net.sctp.auth_enable 2>/dev/null) + if [[ -z "${sctp_auth_status}" || ${sctp_auth_status} != 1 ]]; then + die "FEATURES=test with USE=sctp requires net.sctp.auth_enable=1!" + fi + fi + fi +} + src_prepare() { if use bindist; then mv "${WORKDIR}"/bindist-patches/hobble-openssl "${WORKDIR}" || die