This adds the headers-more module as an nginx subpackage. This module extends nginx's default http headers module by allowing headers to be set and cleared instead of just added.
Homepage for this module is: https://github.com/openresty/headers-more-nginx-module Among other things, it appears this module is necessary to correctly proxy HTTP traffic for Microsoft Exchange. Tested on amd64 making sure setting/clearing of request/response headers works as advertised when proxying. While here, bump the passenger subpackage and make sure it is buildable after the default ruby version change. OK? Thanks, Jeremy Index: Makefile =================================================================== RCS file: /cvs/ports/www/nginx/Makefile,v retrieving revision 1.113 diff -u -p -u -p -r1.113 Makefile --- Makefile 27 Jul 2017 22:01:58 -0000 1.113 +++ Makefile 2 Nov 2017 11:40:36 -0000 @@ -11,6 +11,7 @@ COMMENT-mailproxy= nginx mail proxy modu COMMENT-stream= nginx TCP/UDP proxy module COMMENT-naxsi= nginx web application firewall module COMMENT-lua= nginx lua scripting module +COMMENT-headers_more= nginx module for setting/adding/clearing headers COMMENT-perl= nginx perl scripting module COMMENT-passenger= nginx passenger (ruby/python/nodejs) integration module @@ -26,19 +27,24 @@ PKGNAME-mailproxy= nginx-mailproxy-${VE PKGNAME-stream= nginx-stream-${VERSION} PKGNAME-naxsi= nginx-naxsi-${VERSION} PKGNAME-lua= nginx-lua-${VERSION} +PKGNAME-headers_more= nginx-headers-more-${VERSION} PKGNAME-perl= nginx-perl-${VERSION} PKGNAME-passenger= nginx-passenger-${VERSION} +REVISION-passenger= 0 + MASTER_SITES= https://nginx.org/download/ MASTER_SITES0= https://github.com/simpl/ngx_devel_kit/archive/ MASTER_SITES1= https://github.com/nbs-system/naxsi/archive/ MASTER_SITES2= https://github.com/openresty/lua-nginx-module/archive/ MASTER_SITES3= https://raw.githubusercontent.com/rnagy/nginx_chroot_patch/master/ +MASTER_SITES4= https://github.com/openresty/headers-more-nginx-module/archive/ DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ ngx_devel_kit-v0.3.0.tar.gz{v0.3.0.tar.gz}:0 \ naxsi-0.55.1.tar.gz{0.55.1.tar.gz}:1 \ - lua-nginx-module-v0.10.6.tar.gz{v0.10.6.tar.gz}:2 + lua-nginx-module-v0.10.6.tar.gz{v0.10.6.tar.gz}:2 \ + headers-more-nginx-module-v0.32.tar.gz{v0.32.tar.gz}:4 HOMEPAGE= http://nginx.org/ @@ -50,7 +56,8 @@ PERMIT_PACKAGE_CDROM= yes # XXX -lua removed following libressl api change; re-add to # MULTI_PACKAGES when this is worked-around -MULTI_PACKAGES = -main -image_filter -geoip -xslt -mailproxy -stream -naxsi -perl -passenger # -lua +MULTI_PACKAGES = -main -image_filter -geoip -xslt -mailproxy -stream \ + -naxsi -perl -passenger -headers_more # -lua FLAVOR ?= PSEUDO_FLAVORS = no_lua @@ -65,6 +72,7 @@ WANTLIB-geoip= GeoIP WANTLIB-xslt= exslt xml2 xslt WANTLIB-naxsi= WANTLIB-lua= ${MODLUA_WANTLIB} m +WANTLIB-headers_more= WANTLIB-perl= c m perl WANTLIB-passenger= m pthread ${COMPILER_LIBCXX} @@ -84,9 +92,10 @@ RUN_DEPENDS-geoip= www/nginx,-main=${VER RUN_DEPENDS-xslt= www/nginx,-main=${VERSION} RUN_DEPENDS-naxsi= www/nginx,-main=${VERSION} RUN_DEPENDS-lua= www/nginx,-main=${VERSION} +RUN_DEPENDS-headers_more=www/nginx,-main=${VERSION} RUN_DEPENDS-perl= www/nginx,-main=${VERSION} RUN_DEPENDS-passenger= www/nginx,-main=${VERSION} \ - ruby-passenger-*|ruby21-passenger-*|ruby22-passenger-*|ruby23-passenger-*:www/ruby-passenger + ruby23-passenger-*|ruby24-passenger-*:www/ruby-passenger NGINX_DIR= /var/www SUBST_VARS= NGINX_DIR @@ -98,6 +107,7 @@ PREFIX-image_filter= ${NGINX_MODULES_DIR PREFIX-geoip= ${NGINX_MODULES_DIR} PREFIX-xslt= ${NGINX_MODULES_DIR} PREFIX-lua= ${NGINX_MODULES_DIR} +PREFIX-headers_more= ${NGINX_MODULES_DIR} PREFIX-passenger= ${NGINX_MODULES_DIR} CFLAGS+= -Wall -Wpointer-arith \ @@ -151,6 +161,7 @@ CONFIGURE_ARGS+= --prefix=${NGINX_DIR} \ --with-stream=dynamic \ --add-dynamic-module=${WRKSRC}/naxsi/naxsi_src/ \ --add-dynamic-module=${WRKSRC}/ngx_devel_kit \ + --add-dynamic-module=${WRKSRC}/headers-more-nginx-module \ --add-dynamic-module=${LOCALBASE}/lib/phusion-passenger${GEM_BIN_SUFFIX}/src/nginx_module SUBSTFILES= conf/nginx.conf \ @@ -164,7 +175,8 @@ pre-patch: mv ../naxsi-* naxsi cd ${WRKSRC} && \ mv ../ngx_devel_kit-* ngx_devel_kit && \ - mv ../lua-nginx-module-* lua-nginx-module + mv ../lua-nginx-module-* lua-nginx-module && \ + mv ../headers-more-nginx-module-* headers-more-nginx-module pre-configure: @cd ${WRKSRC} && ${SUBST_CMD} ${SUBSTFILES} Index: distinfo =================================================================== RCS file: /cvs/ports/www/nginx/distinfo,v retrieving revision 1.61 diff -u -p -u -p -r1.61 distinfo --- distinfo 27 Jul 2017 22:01:58 -0000 1.61 +++ distinfo 2 Nov 2017 11:40:36 -0000 @@ -1,8 +1,10 @@ +SHA256 (headers-more-nginx-module-v0.32.tar.gz) = xtnauOofyZcDEAfi6PR8ztAUF+IDzYjVOp/p9q4ThyA= SHA256 (lua-nginx-module-v0.10.6.tar.gz) = uYxPZIWJu/Piw9X9GGZOen74msCD6WyOmE+pGeenwHM= SHA256 (naxsi-0.55.1.tar.gz) = Rd0N96awtqqcZOuMOajilNZZ2H+xjhks9Y8UAvPNsKg= SHA256 (nginx-1.12.1-chroot.patch) = PJF/2hg+WkMNlTXBhipDffH/v+46fm4zNqHFy7O6hzw= SHA256 (nginx-1.12.1.tar.gz) = h5O/QmSFow+RAhtrlFqf2KhNh9F7VmViw3l6uo+sdvs= SHA256 (ngx_devel_kit-v0.3.0.tar.gz) = iOBamainQZBm9a51lm+x78QJutRSLRSYbaB0VUrmFhk= +SIZE (headers-more-nginx-module-v0.32.tar.gz) = 28033 SIZE (lua-nginx-module-v0.10.6.tar.gz) = 597217 SIZE (naxsi-0.55.1.tar.gz) = 185997 SIZE (nginx-1.12.1-chroot.patch) = 8196 Index: pkg/DESCR-headers_more =================================================================== RCS file: pkg/DESCR-headers_more diff -N pkg/DESCR-headers_more --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ pkg/DESCR-headers_more 2 Nov 2017 11:40:36 -0000 @@ -0,0 +1,2 @@ +This module allows for setting and clearing input and output headers, +while nginx's default only allows for adding headers. Index: pkg/PLIST-headers_more =================================================================== RCS file: pkg/PLIST-headers_more diff -N pkg/PLIST-headers_more --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ pkg/PLIST-headers_more 2 Nov 2017 11:40:36 -0000 @@ -0,0 +1,2 @@ +@comment $OpenBSD: PLIST-lua,v 1.1 2016/11/04 22:13:43 jeremy Exp $ +ngx_http_headers_more_filter_module.so
