diff options
author | V3n3RiX <venerix@koprulu.sector> | 2022-11-06 03:19:10 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2022-11-06 03:19:10 +0000 |
commit | 30c2cb2c8971dc95b672303f9191d166d622fe47 (patch) | |
tree | b00c94cf0768a52995a5c08513a56ceae48aeb26 /dev-php/snuffleupagus/snuffleupagus-0.8.3.ebuild | |
parent | ca3d7bcb3126761ac24ef4642964d7e16b1df428 (diff) |
gentoo auto-resync : 06:11:2022 - 03:19:10
Diffstat (limited to 'dev-php/snuffleupagus/snuffleupagus-0.8.3.ebuild')
-rw-r--r-- | dev-php/snuffleupagus/snuffleupagus-0.8.3.ebuild | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/dev-php/snuffleupagus/snuffleupagus-0.8.3.ebuild b/dev-php/snuffleupagus/snuffleupagus-0.8.3.ebuild new file mode 100644 index 000000000000..00e1998355c4 --- /dev/null +++ b/dev-php/snuffleupagus/snuffleupagus-0.8.3.ebuild @@ -0,0 +1,78 @@ +# Copyright 2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PHP_EXT_NAME="${PN}" +PHP_EXT_INI="yes" +PHP_EXT_ZENDEXT="no" +PHP_EXT_ECONF_ARGS=( --enable-${PN} ) +PHP_EXT_S="${S}/src" +PHP_EXT_NEEDED_USE="session(+)" + +USE_PHP="php7-4 php8-0 php8-1" + +inherit php-ext-source-r3 + +KEYWORDS="~amd64" + +DESCRIPTION="A PHP module to drastically raise the cost of attacks against websites" +HOMEPAGE="https://snuffleupagus.readthedocs.io/index.html" +SRC_URI="https://github.com/jvoisin/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="LGPL-3 PHP-3.01" +SLOT="0" + +src_prepare() { + # fix file locations tests look for + ln -s "${P}/config" "${WORKDIR}/config" || die + # Fix path dependent tests + sed -i -e 's~src/tests/~~' \ + src/tests/session_encryption/crypt_session_read_uncrypt.phpt || die + sed -i -e 's~%a/src~%a~' \ + src/tests/disable_function/disabled_functions_runtime.phpt || die + # Fix bad test reference + sed -i -e 's~%src/~%s~' \ + src/tests/deny_writable/deny_writable_execution_simulation.phpt || die + php-ext-source-r3_src_prepare +} + +src_install() { + addtoinifile() { + local inifile="${WORKDIR}/${1}" + local inidir="${inifile%/*}" + + mkdir -p "${inidir}" || die "failed to create INI directory ${inidir}" + + local my_added="${2}=${3}" + echo "${my_added}" >> "${inifile}" || die "failed to append to ${inifile}" + einfo "Added '${my_added}' to /${1}" + + insinto "/${1%/*}" + doins "${inifile}" + } + einstalldocs + local slot x cfgdir + php-ext-source-r3_src_install + # Add the rules file which vary by install version + for slot in $(php_get_slots); do + php_init_slot_env "${slot}" + for x in ${PHP_EXT_SAPIS} ; do + cfgdir="/etc/php/${x}-${slot}" + if [[ -f "${ED}${cfgdir}/ext/${PHP_INI_NAME}.ini" ]]; then + addtoinifile "${cfgdir#/}/ext/${PHP_INI_NAME}.ini" \ + "sp.configuration_file" "${cfgdir}/${PN}.rules" + insinto "${cfgdir}" + case ${PHP_CURRENTSLOT:0:1} in + 8) newins "${S}/config/default_php8.rules" "${PN}.rules" ;; + *) newins "${S}/config/default.rules" "${PN}.rules" ;; + esac + fi + done + done +} + +pkg_postinst() { + elog "This extension is configured with recommended rules enabled by default." + elog "Feel free to customize as necessary. Please test outside of production first." + elog "Failure to test may cause unexpected results to loosely coded sites." +} |