freebsd-ports/www/mod_security/Makefile
Pascal Christen ecca07542f www/mod_security: Update to 2.9.6
ChangeLog: https://github.com/SpiderLabs/ModSecurity/releases/tag/v2.9.6

New features and security impacting issues

    Adjust parser activation rules in modsecurity.conf-recommended
    Multipart parsing fixes and new MULTIPART_PART_HEADERS collection

Bug fixes

 * Limit rsub null termination to where necessary
 * IIS: Update dependencies for next planned release
 * XML parser cleanup: NULL duplicate pointer
 * Properly cleanup XML parser contexts upon completion
 * Fix memory leak in streams
 * Fix: negative usec on log line when data type long is 32b
 * mlogc log-line parsing fails due to enhanced timestamp
 * Allow no-key, single-value JSON body
 * Set SecStatusEngine Off in modsecurity.conf-recommended
 * Fix memory leak that occurs on JSON parsing error
 * Multipart names/filenames may include single quote if double-quote enclosed
 * Add SecRequestBodyJsonDepthLimit to modsecurity.conf-recommended

PR:		266318
Reported by:	pascal.christen@hostpoint.ch
Reviewed by:	tuc03516@gmail.com
Approved by:	joneum@ (maintainer, timeout > 1 month)
2022-10-19 18:11:58 +02:00

84 lines
2.4 KiB
Makefile

PORTNAME= mod_security
DISTVERSIONPREFIX= v
PORTVERSION= 2.9.6
CATEGORIES= www security
MASTER_SITES= https://github.com/SpiderLabs/ModSecurity/releases/download/v${PORTVERSION}/
PKGNAMEPREFIX= ${APACHE_PKGNAMEPREFIX}
DISTNAME= ${PORTNAME:S/_//:S/2//}-${PORTVERSION}
MAINTAINER= joneum@FreeBSD.org
COMMENT= Intrusion detection and prevention engine
WWW= https://www.modsecurity.org/
LICENSE= APACHE20
LIB_DEPENDS+= libpcre.so:devel/pcre \
libapr-1.so:devel/apr1 \
libyajl.so:devel/yajl \
libcurl.so:ftp/curl \
libgdbm.so:databases/gdbm \
libexpat.so:textproc/expat2
USES= apache:2.4+ bdb gnome perl5 pkgconfig shebangfix
USE_GNOME= libxml2
GNU_CONFIGURE= yes
SHEBANG_FILES= tools/rules-updater.pl.in mlogc/mlogc-batch-load.pl.in
perl_OLD_CMD= @PERL@
AP_INC= ${LOCALBASE}/include/libxml2
AP_LIB= ${LOCALBASE}/lib
MODULENAME= mod_security2
SRC_FILE= *.c
PORTDOCS= *
DOCSDIR= ${PREFIX}/share/doc/${MODULENAME}
SUB_FILES+= pkg-message
SUB_FILES+= README
SUB_FILES+= ${APMOD_FILE}.sample
APMOD_FILE= 280_${PORTNAME}.conf
SUB_LIST+= APMOD_FILE=${APMOD_FILE}
OPTIONS_DEFINE= DOCS FUZZYHASH LUA MLOGC
OPTIONS_SUB= yes
LUA_CONFIGURE_ON= --with-lua=${LOCALBASE}
LUA_CONFIGURE_OFF+= --without-lua
LUA_USES= lua:51+
MLOGC_DESC= Build ModSecurity Log Collector
MLOGC_CONFIGURE_ON= --disable-errors
MLOGC_CONFIGURE_OFF= --disable-mlogc
FUZZYHASH_DESC= Allow matching contents using fuzzy hashes with ssdeep
FUZZYHASH_CONFIGURE_ON= --with-ssdeep=${LOCALBASE}
FUZZYHASH_CONFIGURE_OFF=--without-ssdeep
FUZZYHASH_LIB_DEPENDS= libfuzzy.so:security/ssdeep
ETCDIR= ${PREFIX}/etc/modsecurity
REINPLACE_ARGS= -i ""
AP_EXTRAS+= -DWITH_LIBXML2
CONFIGURE_ARGS+=--with-apxs=${APXS} --with-pcre=${LOCALBASE} --with-yajl=${LOCALBASE} --with-curl=${LOCALBASE}
post-patch:
@${REINPLACE_CMD} -e "s/lua5.1/lua-${LUA_VER}/g" ${WRKSRC}/configure
pre-install:
@${MKDIR} ${STAGEDIR}${PREFIX}/${APACHEMODDIR}
post-install:
@${MKDIR} ${STAGEDIR}${ETCDIR}
${INSTALL_DATA} ${WRKSRC}/modsecurity.conf-recommended \
${STAGEDIR}${ETCDIR}/modsecurity.conf.sample
${INSTALL_DATA} ${WRKSRC}/unicode.mapping \
${STAGEDIR}${ETCDIR}/unicode.mapping
@${MKDIR} ${STAGEDIR}${DOCSDIR}
(cd ${WRKSRC} && ${COPYTREE_SHARE} doc ${STAGEDIR}${DOCSDIR})
${INSTALL_DATA} ${WRKDIR}/README ${STAGEDIR}${DOCSDIR}
@${MKDIR} ${STAGEDIR}${PREFIX}/${APACHEETCDIR}/modules.d
${INSTALL_DATA} ${WRKDIR}/${APMOD_FILE}.sample ${STAGEDIR}${PREFIX}/${APACHEETCDIR}/modules.d
.include <bsd.port.mk>