Date: Sun, 5 Jun 2016 17:44:02 +0000 (UTC) From: Jason Unovitch <junovitch@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-branches@freebsd.org Subject: svn commit: r416407 - in branches/2016Q2/www: nginx nginx-devel nginx-devel/files nginx/files Message-ID: <201606051744.u55Hi2cl001401@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: junovitch Date: Sun Jun 5 17:44:02 2016 New Revision: 416407 URL: https://svnweb.freebsd.org/changeset/ports/416407 Log: MFH: r412446 r412447 r412449 r412450 r412534 r412535 r412555 r412588 r412645 r412858 r412862 r413165 r413379 r413380 r413662 Apply CVE-2016-4450 patches to www/nginx and www/nginx-devel following a sync with r413662 from head before the major release updates to 1.10.x and 1.11.x and configuration change requirement brought about by dynamic module support. - Enable several vendor's modules to be in sync with vendor's original packages for some linux distros, please see http://nginx.org/en/linux_packages.html for details. - Upgrade nginx-devel from 1.9.12 to 1.9.15; remove needless vendor patches. Add/upgrade third-party modules: o) Upgrade third-party brotli module from 86998c6 to 2fc6f12. o) Add AWS proxy third-party module. o) Change the third-party http_auth_digest module location and upgrade it. Previous location no longer supported by developers. o) Upgrade third-party nchan (formerly http_push) module from 0.99.8 to 0.99.11. o) Enable vendor's http_realip module by default. o) Upgrade third-party njs module from 50fbb3b to c4a5f2b. o) Upgrade third-party tarantool module from 966f2f5 to 3599ba0. o) Add third-party upstream check module. o) Upgrade push from 0.99.11 to 0.99.12; o) Upgrade lua from 7410339 to d44f8e0; o) Upgrade shibboleth from 20150121 to 4f1119b. PR: 208499 203967 208380 Security: CVE-2016-4450 Security: https://vuxml.FreeBSD.org/freebsd/36cf7670-2774-11e6-af29-f0def16c5c1b.html Approved by: ports-secteam (with hat) Added: branches/2016Q2/www/nginx-devel/files/extra-patch-ngx_http_upstream_fair_module.c - copied unchanged from r413165, head/www/nginx-devel/files/extra-patch-ngx_http_upstream_fair_module.c branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_hash_module.c - copied unchanged from r413165, head/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_hash_module.c branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_ip_hash_module.c - copied unchanged from r413165, head/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_ip_hash_module.c branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_least_conn_module.c - copied unchanged from r413165, head/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_least_conn_module.c branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-ngx_http_upstream_round_robin.c - copied unchanged from r413165, head/www/nginx-devel/files/extra-patch-src-http-ngx_http_upstream_round_robin.c branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-ngx_http_upstream_round_robin.h - copied unchanged from r413165, head/www/nginx-devel/files/extra-patch-src-http-ngx_http_upstream_round_robin.h branches/2016Q2/www/nginx-devel/files/patch-CVE-2016-4450 (contents, props changed) branches/2016Q2/www/nginx/files/extra-patch-ngx_http_upstream_fair_module.c - copied unchanged from r413165, head/www/nginx/files/extra-patch-ngx_http_upstream_fair_module.c branches/2016Q2/www/nginx/files/extra-patch-src-http-modules-ngx_http_upstream_hash_module.c - copied unchanged from r413165, head/www/nginx/files/extra-patch-src-http-modules-ngx_http_upstream_hash_module.c branches/2016Q2/www/nginx/files/extra-patch-src-http-modules-ngx_http_upstream_ip_hash_module.c - copied unchanged from r413165, head/www/nginx/files/extra-patch-src-http-modules-ngx_http_upstream_ip_hash_module.c branches/2016Q2/www/nginx/files/extra-patch-src-http-modules-ngx_http_upstream_least_conn_module.c - copied unchanged from r413165, head/www/nginx/files/extra-patch-src-http-modules-ngx_http_upstream_least_conn_module.c branches/2016Q2/www/nginx/files/extra-patch-src-http-ngx_http_upstream_round_robin.c - copied unchanged from r413165, head/www/nginx/files/extra-patch-src-http-ngx_http_upstream_round_robin.c branches/2016Q2/www/nginx/files/extra-patch-src-http-ngx_http_upstream_round_robin.h - copied unchanged from r413165, head/www/nginx/files/extra-patch-src-http-ngx_http_upstream_round_robin.h branches/2016Q2/www/nginx/files/patch-CVE-2016-4450 (contents, props changed) Deleted: branches/2016Q2/www/nginx-devel/files/patch-auto-make branches/2016Q2/www/nginx-devel/files/patch-perl-as-dynamic-module Modified: branches/2016Q2/www/nginx-devel/Makefile branches/2016Q2/www/nginx-devel/distinfo branches/2016Q2/www/nginx-devel/files/extra-patch-ngx_http_tarantool-config branches/2016Q2/www/nginx/Makefile branches/2016Q2/www/nginx/distinfo branches/2016Q2/www/nginx/files/extra-patch-ngx_http_tarantool-config Directory Properties: branches/2016Q2/ (props changed) Modified: branches/2016Q2/www/nginx-devel/Makefile ============================================================================== --- branches/2016Q2/www/nginx-devel/Makefile Sun Jun 5 17:44:01 2016 (r416406) +++ branches/2016Q2/www/nginx-devel/Makefile Sun Jun 5 17:44:02 2016 (r416407) @@ -2,7 +2,8 @@ # $FreeBSD$ PORTNAME= nginx -PORTVERSION= 1.9.12 +PORTVERSION= 1.9.15 +PORTREVISION= 1 CATEGORIES= www MASTER_SITES= http://nginx.org/download/ MASTER_SITES+= LOCAL/osa @@ -37,6 +38,7 @@ OPTIONS_DEFINE= \ HTTP_GZIP_STATIC \ HTTP_GUNZIP_FILTER \ HTTP_IMAGE_FILTER \ + HTTP_MP4 \ HTTP_PERL \ HTTP_RANDOM_INDEX \ HTTP_REALIP \ @@ -59,6 +61,7 @@ OPTIONS_DEFINE= \ THREADS \ WWW \ AJP \ + AWS_AUTH \ CACHE_PURGE \ CLOJURE \ CT \ @@ -76,6 +79,7 @@ OPTIONS_DEFINE= \ HTTP_FOOTER \ HTTP_JSON_STATUS \ HTTP_MOGILEFS \ + HTTP_MP4_H264 \ HTTP_NOTICE \ HTTP_PUSH \ HTTP_PUSH_STREAM \ @@ -85,6 +89,7 @@ OPTIONS_DEFINE= \ HTTP_TARANTOOL \ HTTP_UPLOAD \ HTTP_UPLOAD_PROGRESS \ + HTTP_UPSTREAM_CHECK \ HTTP_UPSTREAM_FAIR \ HTTP_UPSTREAM_STICKY \ HTTP_VIDEO_THUMBEXTRACTOR \ @@ -117,12 +122,13 @@ OPTIONS_DEFINE= \ STATSD \ UDPLOG \ XRID_HEADER \ - XSS \ - VIDEO + XSS -OPTIONS_RADIO= VIDEO -OPTIONS_RADIO_VIDEO= HTTP_MP4 HTTP_MP4_H264 -OPTIONS_DEFAULT= IPV6 HTTP HTTP_CACHE HTTP_REWRITE HTTP_SSL HTTP_STATUS HTTPV2 WWW +OPTIONS_DEFAULT=IPV6 FILE_AIO HTTP HTTP_ADDITION HTTP_AUTH_REQ HTTP_CACHE \ + HTTP_DAV HTTP_FLV HTTP_GZIP_STATIC HTTP_GUNZIP_FILTER \ + HTTP_MP4 HTTP_RANDOM_INDEX HTTP_REALIP HTTP_SECURE_LINK \ + HTTP_SLICE HTTP_REWRITE HTTP_SSL HTTP_STATUS HTTP_SUB \ + HTTPV2 MAIL MAIL_SSL STREAM STREAM_SSL THREADS WWW DEBUGLOG_DESC= Enable debug log (--with-debug) FILE_AIO_DESC= Enable file aio @@ -160,6 +166,7 @@ STREAM_SSL_DESC= Enable stream_ssl modu THREADS_DESC= Enable threads support WWW_DESC= Enable html sample files AJP_DESC= 3rd party ajp module +AWS_AUTH_DESC= 3rd party aws auth module CACHE_PURGE_DESC= 3rd party cache_purge module CLOJURE_DESC= 3rd party clojure module CT_DESC= 3rd party cert_transparency module (SSL req.) @@ -187,6 +194,7 @@ HTTP_SUBS_FILTER_DESC= 3rd party subs f HTTP_TARANTOOL_DESC= 3rd party tarantool upstream module HTTP_UPLOAD_DESC= 3rd party upload module HTTP_UPLOAD_PROGRESS_DESC= 3rd party uploadprogress module +HTTP_UPSTREAM_CHECK_DESC= 3rd party upstream check module HTTP_UPSTREAM_FAIR_DESC= 3rd party upstream fair module HTTP_UPSTREAM_STICKY_DESC= 3rd party upstream sticky module HTTP_VIDEO_THUMBEXTRACTOR_DESC= 3rd party video_thumbextractor module @@ -316,12 +324,11 @@ CONFIGURE_ARGS+=--with-http_addition_mod .endif .if ${PORT_OPTIONS:MHTTP_AUTH_DIGEST} -GIT_AUTH_DIGEST_VERSION= bd1c86a -GH_ACCOUNT+= samizdatco:auth_digest +GIT_AUTH_DIGEST_VERSION= 4edfb18 +GH_ACCOUNT+= atomx:auth_digest GH_PROJECT+= nginx-http-auth-digest:auth_digest GH_TAGNAME+= ${GIT_AUTH_DIGEST_VERSION}:auth_digest CONFIGURE_ARGS+=--add-module=${WRKSRC_auth_digest} -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_auth_digest_module.c .endif .if ${PORT_OPTIONS:MHTTP_AUTH_KRB5} @@ -368,6 +375,14 @@ GH_TAGNAME+= ${NGINX_AJP_VERSION}:ajp CONFIGURE_ARGS+=--add-module=${WRKSRC_ajp} .endif +.if ${PORT_OPTIONS:MAWS_AUTH} +NGINX_AWS_AUTH_VERSION= 1e62670 +GH_ACCOUNT+= anomalizer:aws_auth +GH_PROJECT+= ngx_aws_auth:aws_auth +GH_TAGNAME+= ${NGINX_AWS_AUTH_VERSION}:aws_auth +CONFIGURE_ARGS+=--add-module=${WRKSRC_aws_auth} +.endif + .if ${PORT_OPTIONS:MCACHE_PURGE} NGINX_CACHE_PURGE_VERSION= 2.3 MASTER_SITES+= http://labs.frickle.com/files/:cache_purge @@ -521,7 +536,7 @@ USES+= perl5 .endif .if ${PORT_OPTIONS:MHTTP_PUSH} -GIT_PUSH_VERSION= 0.99.8 +GIT_PUSH_VERSION= 0.99.12 GH_ACCOUNT+= slact:push GH_PROJECT+= nchan:push GH_TAGNAME+= v${GIT_PUSH_VERSION}:push @@ -571,7 +586,7 @@ LIB_DEPENDS+= libmsgpuck.so:devel/msgpuc libyajl.so:devel/yajl GH_ACCOUNT+= tarantool:nginx_tarantool GH_PROJECT+= nginx_upstream_module:nginx_tarantool -GH_TAGNAME+= 966f2f5:nginx_tarantool +GH_TAGNAME+= 3599ba0:nginx_tarantool CFLAGS+= -I${LOCALBASE}/include/msgpuck CONFIGURE_ARGS+=--add-module=${WRKSRC_nginx_tarantool} EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_tarantool-config @@ -609,11 +624,28 @@ GH_TAGNAME+= v${NGINX_UPLOADPROGRESS_VER CONFIGURE_ARGS+=--add-module=${WRKSRC_uploadprogress} .endif +.if !empty(PORT_OPTIONS:MHTTP_UPSTREAM_CHECK) +# WWW: https://github.com/yaoweibin/nginx_upstream_check_module +NGINX_UPSTREAM_CHECK_VERSION= 10782ea +GH_ACCOUNT+= yaoweibin:upstreamcheck +GH_PROJECT+= nginx_upstream_check_module:upstreamcheck +GH_TAGNAME+= ${NGINX_UPSTREAM_CHECK_VERSION}:upstreamcheck +CONFIGURE_ARGS+=--add-module=${WRKSRC_upstreamcheck} +EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-src-http-modules-ngx_http_upstream_hash_module.c \ + ${PATCHDIR}/extra-patch-src-http-modules-ngx_http_upstream_ip_hash_module.c \ + ${PATCHDIR}/extra-patch-src-http-modules-ngx_http_upstream_least_conn_module.c \ + ${PATCHDIR}/extra-patch-src-http-ngx_http_upstream_round_robin.c \ + ${PATCHDIR}/extra-patch-src-http-ngx_http_upstream_round_robin.h +.endif + .if !empty(PORT_OPTIONS:MHTTP_UPSTREAM_FAIR) NGINX_UPSTREAM_FAIR_VERSION= 20090923 MASTER_SITES+= LOCAL/osa:upstreamfair DISTFILES+= nginx_upstream_fair-${NGINX_UPSTREAM_FAIR_VERSION}.tar.gz:upstreamfair CONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_upstream_fair-${NGINX_UPSTREAM_FAIR_VERSION} +.if !empty(PORT_OPTIONS:MHTTP_UPSTREAM_CHECK) +EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_upstream_fair_module.c +.endif .endif .if ${PORT_OPTIONS:MHTTP_UPSTREAM_STICKY} @@ -706,7 +738,7 @@ CONFIGURE_ARGS+=--add-module=${WRKSRC_le LIB_DEPENDS+= libluajit-5.1.so:lang/luajit CONFIGURE_ENV+= "LUAJIT_INC=${LOCALBASE}/include/luajit-2.0" CONFIGURE_ENV+= "LUAJIT_LIB=${LOCALBASE}/lib" -NGINX_LUA_VERSION= 7410339 +NGINX_LUA_VERSION= d44f8e0 GH_ACCOUNT+= openresty:lua GH_PROJECT+= lua-nginx-module:lua GH_TAGNAME+= ${NGINX_LUA_VERSION}:lua @@ -827,10 +859,10 @@ EXTRA_PATCHES+= ${PATCHDIR}/extra-patch- .endif .if ${PORT_OPTIONS:MSHIBBOLETH} -GIT_SHIBBOLETH_VERSION= 20150121 +GIT_SHIBBOLETH_VERSION= 4f1119b GH_ACCOUNT+= nginx-shib:shib GH_PROJECT+= nginx-http-shibboleth:shib -GH_TAGNAME+= v${GIT_SHIBBOLETH_VERSION}:shib +GH_TAGNAME+= ${GIT_SHIBBOLETH_VERSION}:shib CONFIGURE_ARGS+=--add-module=${WRKSRC_shib} .endif @@ -902,7 +934,7 @@ WITH_OPENSSL_PORT= yes .if ${PORT_OPTIONS:MNJS} GH_ACCOUNT+= nginx:njs GH_PROJECT+= njs:njs -GH_TAGNAME+= 50fbb3b:njs +GH_TAGNAME+= c4a5f2b:njs CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_njs}/nginx .endif @@ -961,7 +993,7 @@ CONFIGURE_ARGS+=--add-module=${WRKSRC_ar .endif .if ${PORT_OPTIONS:MBROTLI} -NGINX_BROTLI_VERSION= 86998c6 +NGINX_BROTLI_VERSION= 2fc6f12 LIB_DEPENDS+= libbrotlidec.so:devel/libbrotli \ libbrotlienc.so:devel/libbrotli GH_ACCOUNT+= google:brotli Modified: branches/2016Q2/www/nginx-devel/distinfo ============================================================================== --- branches/2016Q2/www/nginx-devel/distinfo Sun Jun 5 17:44:01 2016 (r416406) +++ branches/2016Q2/www/nginx-devel/distinfo Sun Jun 5 17:44:02 2016 (r416407) @@ -1,5 +1,5 @@ -SHA256 (nginx-1.9.12.tar.gz) = 1af2eb956910ed4b11aaf525a81bc37e135907e7127948f9179f5410337da042 -SIZE (nginx-1.9.12.tar.gz) = 899183 +SHA256 (nginx-1.9.15.tar.gz) = cc89b277cc03f403c0b746d60aa5943cdecf59ae48278f8cb7e2df0cbdb6dac3 +SIZE (nginx-1.9.15.tar.gz) = 908984 SHA256 (nginx-accesskey-2.0.3.tar.gz) = d9e94321e78a02de16c57f3e048fd31059fd8116ed03d6de7180f435c52502b1 SIZE (nginx-accesskey-2.0.3.tar.gz) = 2632 SHA256 (ngx_http_auth_pam_module-1.2.tar.gz) = 5a85970ba61a99f55a26d2536a11d512b39bbd622f5737d25a9a8c10db81efa9 @@ -32,14 +32,16 @@ SHA256 (nginx_udplog_module-1.0.0.tar.gz SIZE (nginx_udplog_module-1.0.0.tar.gz) = 6284 SHA256 (giom-nginx_accept_language_module-2f69842_GH0.tar.gz) = 5534ca63cdfc2a7dc4e1cbf9c2d54d3ed3f0e6c86b4a95be48ec0a3f41cc1eb0 SIZE (giom-nginx_accept_language_module-2f69842_GH0.tar.gz) = 3393 -SHA256 (samizdatco-nginx-http-auth-digest-bd1c86a_GH0.tar.gz) = d3071ca4b70cfd7f437add772a2aa6ab585dafb5d5a2e3f5cc70af74da72acf2 -SIZE (samizdatco-nginx-http-auth-digest-bd1c86a_GH0.tar.gz) = 14458 +SHA256 (atomx-nginx-http-auth-digest-4edfb18_GH0.tar.gz) = 8b831fccda3ce9bdf854a3aefa1e466a8da97ca0a5feb33a28b4f117f517b82e +SIZE (atomx-nginx-http-auth-digest-4edfb18_GH0.tar.gz) = 16007 SHA256 (stnoonan-spnego-http-auth-nginx-module-c85a38c_GH0.tar.gz) = b47b23a362aa338c377d6163d15abee6f33ff16bac5f86ee4d9543293fe8c4d1 SIZE (stnoonan-spnego-http-auth-nginx-module-c85a38c_GH0.tar.gz) = 18120 SHA256 (kvspb-nginx-auth-ldap-8517bb0_GH0.tar.gz) = a69cf8d5490620d5507d712fa234e137d9404e9c250563f2eb421eafa6209975 SIZE (kvspb-nginx-auth-ldap-8517bb0_GH0.tar.gz) = 16947 SHA256 (yaoweibin-nginx_ajp_module-bf6cd93_GH0.tar.gz) = 9e3f78ea73e2d606a95ee64fd3affa4c249f9b342e66b6b11b63061791f28316 SIZE (yaoweibin-nginx_ajp_module-bf6cd93_GH0.tar.gz) = 109704 +SHA256 (anomalizer-ngx_aws_auth-1e62670_GH0.tar.gz) = db7ceef4ae22cf5bfaf5abae64830dfeef203ca85f9f40f7d1f1d90f277478c0 +SIZE (anomalizer-ngx_aws_auth-1e62670_GH0.tar.gz) = 8260 SHA256 (nginx-clojure-nginx-clojure-v0.4.4_GH0.tar.gz) = 642ebf4724fa7c3efd5349e60b442ac8671497406834804c903ec548bfdcb691 SIZE (nginx-clojure-nginx-clojure-v0.4.4_GH0.tar.gz) = 603856 SHA256 (grahamedgecombe-nginx-ct-f3cad5e_GH0.tar.gz) = 846e148f09ffea2ffc1b09b20c84408e23c170313f967513a85009717227c13a @@ -60,18 +62,20 @@ SHA256 (nginx-modules-ngx_http_json_stat SIZE (nginx-modules-ngx_http_json_status_module-1d2f303_GH0.tar.gz) = 6736 SHA256 (kr-nginx-notice-3c95966_GH0.tar.gz) = e829fc94178cc8c91fef15a1fc44ee7ac162c13eddc0bba4c9427aaa23386885 SIZE (kr-nginx-notice-3c95966_GH0.tar.gz) = 3343 -SHA256 (slact-nchan-v0.99.8_GH0.tar.gz) = 3b25cbd7aff9742dac15d64d55f67a4ab83fc52053111ddd3fd0b8f2932682d1 -SIZE (slact-nchan-v0.99.8_GH0.tar.gz) = 344368 +SHA256 (slact-nchan-v0.99.12_GH0.tar.gz) = b761255489c617aa270910f3ba02af1adbd42e299116cdd465c80dda1b2acf07 +SIZE (slact-nchan-v0.99.12_GH0.tar.gz) = 358336 SHA256 (wandenberg-nginx-push-stream-module-0.5.1_GH0.tar.gz) = a95f31e80120fd7324795b92a0d94c0b43e1265df7fd0f1eba11a337c1e0a626 SIZE (wandenberg-nginx-push-stream-module-0.5.1_GH0.tar.gz) = 175263 SHA256 (yaoweibin-ngx_http_substitutions_filter_module-v0.6.4_GH0.tar.gz) = ed4ddbcf0c434f4a1e97b61251a63ace759792764bd5cb79ff20efe348db8db3 SIZE (yaoweibin-ngx_http_substitutions_filter_module-v0.6.4_GH0.tar.gz) = 92230 -SHA256 (tarantool-nginx_upstream_module-966f2f5_GH0.tar.gz) = 8142475d8ecf0c02d2fc8051364729d842fe06b0b445b416c87c2f796bb42fa7 -SIZE (tarantool-nginx_upstream_module-966f2f5_GH0.tar.gz) = 873343 +SHA256 (tarantool-nginx_upstream_module-3599ba0_GH0.tar.gz) = 9f4c60a742786b3507fb69fb9fb653cec08114399ce0e65a06ea5fb532030713 +SIZE (tarantool-nginx_upstream_module-3599ba0_GH0.tar.gz) = 877305 SHA256 (vkholodkov-nginx-upload-module-aba1e3f34c_GH0.tar.gz) = 62a2c4388585aec463a1cee30bc84953593a93f341dc1df61b42b452594d2a05 SIZE (vkholodkov-nginx-upload-module-aba1e3f34c_GH0.tar.gz) = 28296 SHA256 (masterzen-nginx-upload-progress-module-v0.9.0_GH0.tar.gz) = 93e29b9b437a2e34713de54c2861ea51151624aca09f73f9f44d1caaff01a6b1 SIZE (masterzen-nginx-upload-progress-module-v0.9.0_GH0.tar.gz) = 16990 +SHA256 (yaoweibin-nginx_upstream_check_module-10782ea_GH0.tar.gz) = 52e6acd8c0264a59c5c948271015a59acd3cbcf91377456b7c8dc6f9feecef4a +SIZE (yaoweibin-nginx_upstream_check_module-10782ea_GH0.tar.gz) = 128281 SHA256 (wandenberg-nginx-video-thumbextractor-module-0.7.0_GH0.tar.gz) = 382bb41fa739f471fdab9fbabc5384d8ec7f25b5bb0c45c153f5cc01d428abe2 SIZE (wandenberg-nginx-video-thumbextractor-module-0.7.0_GH0.tar.gz) = 2709351 SHA256 (openresty-drizzle-nginx-module-v0.1.9_GH0.tar.gz) = aafb79d87273eec023025333c34d6d0108026a1ce2e09b20a53e8e2d9bf65080 @@ -88,8 +92,8 @@ SHA256 (mongodb-mongo-c-driver-v0.3.1_GH SIZE (mongodb-mongo-c-driver-v0.3.1_GH0.tar.gz) = 53024 SHA256 (arut-nginx-let-module-v0.0.4_GH0.tar.gz) = cbf6fcddc00a7e30289134bdeace12565e000cc7d4efee2d2ebb8799d0b88270 SIZE (arut-nginx-let-module-v0.0.4_GH0.tar.gz) = 20534 -SHA256 (openresty-lua-nginx-module-7410339_GH0.tar.gz) = 1b78f243ea95efcfd6f5bda43fbe5849bff931b9620d22c75b3de6590e09c684 -SIZE (openresty-lua-nginx-module-7410339_GH0.tar.gz) = 574764 +SHA256 (openresty-lua-nginx-module-d44f8e0_GH0.tar.gz) = e63997f54dc01dcef82598f4423e5433ac46a26606ea9e8b59f631374b326e42 +SIZE (openresty-lua-nginx-module-d44f8e0_GH0.tar.gz) = 575604 SHA256 (openresty-memc-nginx-module-v0.16_GH0.tar.gz) = 24f3c3270831aed2d157c01ef74cb26eab26b832971fe7b9f42a03dbfac10ce4 SIZE (openresty-memc-nginx-module-v0.16_GH0.tar.gz) = 38560 SHA256 (nbs-system-naxsi-0.54_GH0.tar.gz) = 9cc2c09405bc71f78ef26a8b6d70afcea3fccbe8125df70cb0cfc480133daba5 @@ -106,8 +110,8 @@ SHA256 (arut-nginx-rtmp-module-v1.1.7_GH SIZE (arut-nginx-rtmp-module-v1.1.7_GH0.tar.gz) = 519735 SHA256 (openresty-set-misc-nginx-module-6582fb4_GH0.tar.gz) = cc325830477dfcdbb355fc7b19cbc2f4e55c179b3b56fdfe0613b5a7b926235e SIZE (openresty-set-misc-nginx-module-6582fb4_GH0.tar.gz) = 35961 -SHA256 (nginx-shib-nginx-http-shibboleth-v20150121_GH0.tar.gz) = e38a19bb4d30e5487c013c4b6b3e3d5b96de82d63b776471cc2c381a5d00374d -SIZE (nginx-shib-nginx-http-shibboleth-v20150121_GH0.tar.gz) = 10106 +SHA256 (nginx-shib-nginx-http-shibboleth-4f1119b_GH0.tar.gz) = c25f284bc934f59a267d319385a3e11858efef786c84b49a77d09e7f5274bbf1 +SIZE (nginx-shib-nginx-http-shibboleth-4f1119b_GH0.tar.gz) = 16688 SHA256 (cubicdaiya-ngx_small_light-v0.6.15_GH0.tar.gz) = 9bc9c221287a6db56a4a0eb7ac35a560fc15dfd6dafcb500fdea49a583527716 SIZE (cubicdaiya-ngx_small_light-v0.6.15_GH0.tar.gz) = 54695 SHA256 (openresty-srcache-nginx-module-v0.30_GH0.tar.gz) = e34b1ab5f5007661f73819f9c20fd6c2a46ed3e53364e9449b02ef2bd3628633 @@ -118,12 +122,12 @@ SHA256 (gabor-nginx-x-rid-header-0daa3cc SIZE (gabor-nginx-x-rid-header-0daa3cc_GH0.tar.gz) = 2711 SHA256 (openresty-xss-nginx-module-v0.04_GH0.tar.gz) = 4e5230a644779b8298063d5c0bd7dc19531496369456d69dc5281ae1cca4d6ec SIZE (openresty-xss-nginx-module-v0.04_GH0.tar.gz) = 10536 -SHA256 (nginx-njs-50fbb3b_GH0.tar.gz) = dd82502ff1ca0f68a0c6cdc43e26443b0d85429906cd21485fb92e4f0a09fd6c -SIZE (nginx-njs-50fbb3b_GH0.tar.gz) = 142336 +SHA256 (nginx-njs-c4a5f2b_GH0.tar.gz) = 90859b979c76ad04fa3b45ed773ddfe14b6a9ca0b6d70626aa3293c2aad3d52d +SIZE (nginx-njs-c4a5f2b_GH0.tar.gz) = 150513 SHA256 (openresty-array-var-nginx-module-v0.03_GH0.tar.gz) = f9892ec9a2e872d8aabeb2234d0d4c66cf85b8dbb2ca5c108a20c3d8c2111189 SIZE (openresty-array-var-nginx-module-v0.03_GH0.tar.gz) = 9520 -SHA256 (google-ngx_brotli-86998c6_GH0.tar.gz) = 463a583cfbeacdf6d6db5630afaddc9eebeec44301ca68c660cc8fdf4580e5aa -SIZE (google-ngx_brotli-86998c6_GH0.tar.gz) = 10890 +SHA256 (google-ngx_brotli-2fc6f12_GH0.tar.gz) = f72daeb63db97e4facf99f6917f55f5d33e52f7f18d87c01fac05ec50274054f +SIZE (google-ngx_brotli-2fc6f12_GH0.tar.gz) = 10960 SHA256 (calio-form-input-nginx-module-v0.07_GH0.tar.gz) = c0c56cc697a290e98b88d4888bac8828041ef6f3049247d3cd3c63f2808d1e20 SIZE (calio-form-input-nginx-module-v0.07_GH0.tar.gz) = 10563 SHA256 (calio-iconv-nginx-module-v0.10_GH0.tar.gz) = 88e326eba7fdf9fd2376b1ba033b48cb0eee45136528cf5430ac9340088ce324 Modified: branches/2016Q2/www/nginx-devel/files/extra-patch-ngx_http_tarantool-config ============================================================================== --- branches/2016Q2/www/nginx-devel/files/extra-patch-ngx_http_tarantool-config Sun Jun 5 17:44:01 2016 (r416406) +++ branches/2016Q2/www/nginx-devel/files/extra-patch-ngx_http_tarantool-config Sun Jun 5 17:44:02 2016 (r416407) @@ -1,5 +1,5 @@ ---- ../nginx_upstream_module-966f2f5/config.orig 2015-08-20 23:33:02.000000000 +0300 -+++ ../nginx_upstream_module-966f2f5/config 2015-08-23 16:04:59.572045669 +0300 +--- ../nginx_upstream_module-3599ba0/config.orig 2015-08-20 23:33:02.000000000 +0300 ++++ ../nginx_upstream_module-3599ba0/config 2015-08-23 16:04:59.572045669 +0300 @@ -4,7 +4,7 @@ " Copied: branches/2016Q2/www/nginx-devel/files/extra-patch-ngx_http_upstream_fair_module.c (from r413165, head/www/nginx-devel/files/extra-patch-ngx_http_upstream_fair_module.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q2/www/nginx-devel/files/extra-patch-ngx_http_upstream_fair_module.c Sun Jun 5 17:44:02 2016 (r416407, copy of r413165, head/www/nginx-devel/files/extra-patch-ngx_http_upstream_fair_module.c) @@ -0,0 +1,89 @@ +--- ../nginx_upstream_fair-20090923/ngx_http_upstream_fair_module.c.orig 2009-09-24 01:38:16.000000000 +0800 ++++ ../nginx_upstream_fair-20090923/ngx_http_upstream_fair_module.c 2016-03-24 13:56:02.990728000 +0800 +@@ -9,6 +9,10 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++#include "ngx_http_upstream_check_module.h" ++#endif ++ + typedef struct { + ngx_uint_t nreq; + ngx_uint_t total_req; +@@ -42,6 +46,10 @@ + ngx_uint_t max_fails; + time_t fail_timeout; + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ ngx_uint_t check_index; ++#endif ++ + time_t accessed; + ngx_uint_t down:1; + +@@ -474,6 +482,15 @@ + peers->peer[n].fail_timeout = server[i].fail_timeout; + peers->peer[n].down = server[i].down; + peers->peer[n].weight = server[i].down ? 0 : server[i].weight; ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ if (!server[i].down) { ++ peers->peer[n].check_index = ++ ngx_http_upstream_check_add_peer(cf, us, &server[i].addrs[j]); ++ } ++ else { ++ peers->peer[n].check_index = (ngx_uint_t) NGX_ERROR; ++ } ++#endif + n++; + } + } +@@ -524,6 +541,15 @@ + backup->peer[n].max_fails = server[i].max_fails; + backup->peer[n].fail_timeout = server[i].fail_timeout; + backup->peer[n].down = server[i].down; ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ if (!server[i].down) { ++ backup->peer[n].check_index = ++ ngx_http_upstream_check_add_peer(cf, us, &server[i].addrs[j]); ++ } ++ else { ++ backup->peer[n].check_index = (ngx_uint_t) NGX_ERROR; ++ } ++#endif + n++; + } + } +@@ -580,6 +606,9 @@ + peers->peer[i].weight = 1; + peers->peer[i].max_fails = 1; + peers->peer[i].fail_timeout = 10; ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ peers->peer[i].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + } + + us->peer.data = peers; +@@ -721,6 +750,12 @@ + peer = &fp->peers->peer[peer_id]; + + if (!peer->down) { ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, ++ "[upstream_fair] get fair peer, check_index: %ui", ++ peer->check_index); ++ if (!ngx_http_upstream_check_peer_down(peer->check_index)) { ++#endif + if (peer->max_fails == 0 || peer->shared->fails < peer->max_fails) { + return NGX_OK; + } +@@ -731,6 +766,9 @@ + peer->shared->fails = 0; + return NGX_OK; + } ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ } ++#endif + } + + return NGX_BUSY; Copied: branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_hash_module.c (from r413165, head/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_hash_module.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_hash_module.c Sun Jun 5 17:44:02 2016 (r416407, copy of r413165, head/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_hash_module.c) @@ -0,0 +1,44 @@ +--- src/http/modules/ngx_http_upstream_hash_module.c.orig 2016-02-24 14:53:24 UTC ++++ src/http/modules/ngx_http_upstream_hash_module.c +@@ -9,6 +9,9 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++#include "ngx_http_upstream_check_module.h" ++#endif + + typedef struct { + uint32_t hash; +@@ -235,6 +238,15 @@ ngx_http_upstream_get_hash_peer(ngx_peer + goto next; + } + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, ++ "get hash peer, check_index: %ui", ++ peer->check_index); ++ if (ngx_http_upstream_check_peer_down(peer->check_index)) { ++ goto next; ++ } ++#endif ++ + if (peer->max_fails + && peer->fails >= peer->max_fails + && now - peer->checked <= peer->fail_timeout) +@@ -535,6 +547,15 @@ ngx_http_upstream_get_chash_peer(ngx_pee + continue; + } + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, ++ "get consistent_hash peer, check_index: %ui", ++ peer->check_index); ++ if (ngx_http_upstream_check_peer_down(peer->check_index)) { ++ continue; ++ } ++#endif ++ + if (peer->server.len != server->len + || ngx_strncmp(peer->server.data, server->data, server->len) + != 0) Copied: branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_ip_hash_module.c (from r413165, head/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_ip_hash_module.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_ip_hash_module.c Sun Jun 5 17:44:02 2016 (r416407, copy of r413165, head/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_ip_hash_module.c) @@ -0,0 +1,28 @@ +--- src/http/modules/ngx_http_upstream_ip_hash_module.c.orig 2016-02-24 14:53:24 UTC ++++ src/http/modules/ngx_http_upstream_ip_hash_module.c +@@ -9,6 +9,9 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++#include "ngx_http_upstream_check_module.h" ++#endif + + typedef struct { + /* the round robin data must be first */ +@@ -205,6 +208,15 @@ ngx_http_upstream_get_ip_hash_peer(ngx_p + goto next; + } + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, ++ "get ip_hash peer, check_index: %ui", ++ peer->check_index); ++ if (ngx_http_upstream_check_peer_down(peer->check_index)) { ++ goto next; ++ } ++#endif ++ + if (peer->max_fails + && peer->fails >= peer->max_fails + && now - peer->checked <= peer->fail_timeout) Copied: branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_least_conn_module.c (from r413165, head/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_least_conn_module.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_least_conn_module.c Sun Jun 5 17:44:02 2016 (r416407, copy of r413165, head/www/nginx-devel/files/extra-patch-src-http-modules-ngx_http_upstream_least_conn_module.c) @@ -0,0 +1,46 @@ +--- src/http/modules/ngx_http_upstream_least_conn_module.c.orig 2016-02-24 14:53:24 UTC ++++ src/http/modules/ngx_http_upstream_least_conn_module.c +@@ -9,6 +9,9 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++#include "ngx_http_upstream_check_module.h" ++#endif + + static ngx_int_t ngx_http_upstream_init_least_conn_peer(ngx_http_request_t *r, + ngx_http_upstream_srv_conf_t *us); +@@ -148,6 +151,16 @@ ngx_http_upstream_get_least_conn_peer(ng + continue; + } + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, ++ "get least_conn peer, check_index: %ui", ++ peer->check_index); ++ ++ if (ngx_http_upstream_check_peer_down(peer->check_index)) { ++ continue; ++ } ++#endif ++ + if (peer->max_fails + && peer->fails >= peer->max_fails + && now - peer->checked <= peer->fail_timeout) +@@ -199,6 +212,16 @@ ngx_http_upstream_get_least_conn_peer(ng + continue; + } + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, ++ "get least_conn peer, check_index: %ui", ++ peer->check_index); ++ ++ if (ngx_http_upstream_check_peer_down(peer->check_index)) { ++ continue; ++ } ++#endif ++ + if (peer->conns * best->weight != best->conns * peer->weight) { + continue; + } Copied: branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-ngx_http_upstream_round_robin.c (from r413165, head/www/nginx-devel/files/extra-patch-src-http-ngx_http_upstream_round_robin.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-ngx_http_upstream_round_robin.c Sun Jun 5 17:44:02 2016 (r416407, copy of r413165, head/www/nginx-devel/files/extra-patch-src-http-ngx_http_upstream_round_robin.c) @@ -0,0 +1,101 @@ +--- src/http/ngx_http_upstream_round_robin.c.orig 2016-02-24 14:53:24 UTC ++++ src/http/ngx_http_upstream_round_robin.c +@@ -9,6 +9,9 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++#include "ngx_http_upstream_check_module.h" ++#endif + + #define ngx_http_upstream_tries(p) ((p)->number \ + + ((p)->next ? (p)->next->number : 0)) +@@ -96,7 +99,14 @@ ngx_http_upstream_init_round_robin(ngx_c + peer[n].fail_timeout = server[i].fail_timeout; + peer[n].down = server[i].down; + peer[n].server = server[i].name; +- ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ if (!server[i].down) { ++ peer[n].check_index = ++ ngx_http_upstream_check_add_peer(cf, us, &server[i].addrs[j]); ++ } else { ++ peer[n].check_index = (ngx_uint_t) NGX_ERROR; ++ } ++#endif + *peerp = &peer[n]; + peerp = &peer[n].next; + n++; +@@ -159,7 +169,15 @@ ngx_http_upstream_init_round_robin(ngx_c + peer[n].fail_timeout = server[i].fail_timeout; + peer[n].down = server[i].down; + peer[n].server = server[i].name; +- ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ if (!server[i].down) { ++ peer[n].check_index = ++ ngx_http_upstream_check_add_peer(cf, us, &server[i].addrs[j]); ++ } ++ else { ++ peer[n].check_index = (ngx_uint_t) NGX_ERROR; ++ } ++#endif + *peerp = &peer[n]; + peerp = &peer[n].next; + n++; +@@ -225,6 +243,9 @@ ngx_http_upstream_init_round_robin(ngx_c + peer[i].current_weight = 0; + peer[i].max_fails = 1; + peer[i].fail_timeout = 10; ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ peer[i].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + *peerp = &peer[i]; + peerp = &peer[i].next; + } +@@ -339,6 +360,9 @@ ngx_http_upstream_create_round_robin_pee + peer[0].current_weight = 0; + peer[0].max_fails = 1; + peer[0].fail_timeout = 10; ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ peer[0].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + peers->peer = peer; + + } else { +@@ -381,6 +405,9 @@ ngx_http_upstream_create_round_robin_pee + peer[i].current_weight = 0; + peer[i].max_fails = 1; + peer[i].fail_timeout = 10; ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ peer[i].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + *peerp = &peer[i]; + peerp = &peer[i].next; + } +@@ -441,6 +468,12 @@ ngx_http_upstream_get_round_robin_peer(n + goto failed; + } + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ if (ngx_http_upstream_check_peer_down(peer->check_index)) { ++ goto failed; ++ } ++#endif ++ + rrp->current = peer; + + } else { +@@ -542,6 +575,12 @@ ngx_http_upstream_get_peer(ngx_http_upst + continue; + } + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ if (ngx_http_upstream_check_peer_down(peer->check_index)) { ++ continue; ++ } ++#endif ++ + if (peer->max_fails + && peer->fails >= peer->max_fails + && now - peer->checked <= peer->fail_timeout) Copied: branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-ngx_http_upstream_round_robin.h (from r413165, head/www/nginx-devel/files/extra-patch-src-http-ngx_http_upstream_round_robin.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q2/www/nginx-devel/files/extra-patch-src-http-ngx_http_upstream_round_robin.h Sun Jun 5 17:44:02 2016 (r416407, copy of r413165, head/www/nginx-devel/files/extra-patch-src-http-ngx_http_upstream_round_robin.h) @@ -0,0 +1,13 @@ +--- src/http/ngx_http_upstream_round_robin.h.orig 2016-02-24 14:53:24 UTC ++++ src/http/ngx_http_upstream_round_robin.h +@@ -35,6 +35,10 @@ struct ngx_http_upstream_rr_peer_s { + ngx_uint_t max_fails; + time_t fail_timeout; + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ ngx_uint_t check_index; ++#endif ++ + ngx_uint_t down; /* unsigned down:1; */ + + #if (NGX_HTTP_SSL) Added: branches/2016Q2/www/nginx-devel/files/patch-CVE-2016-4450 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q2/www/nginx-devel/files/patch-CVE-2016-4450 Sun Jun 5 17:44:02 2016 (r416407) @@ -0,0 +1,14 @@ +--- src/os/unix/ngx_files.c ++++ src/os/unix/ngx_files.c +@@ -356,6 +356,11 @@ + n = 0; + + for ( /* void */ ; cl; cl = cl->next) { ++ ++ if (ngx_buf_special(cl->buf)) { ++ continue; ++ } ++ + size = cl->buf->last - cl->buf->pos; + + if (prev == cl->buf->pos) { Modified: branches/2016Q2/www/nginx/Makefile ============================================================================== --- branches/2016Q2/www/nginx/Makefile Sun Jun 5 17:44:01 2016 (r416406) +++ branches/2016Q2/www/nginx/Makefile Sun Jun 5 17:44:02 2016 (r416407) @@ -3,7 +3,7 @@ PORTNAME= nginx PORTVERSION= 1.8.1 -PORTREVISION= 0 +PORTREVISION= 3 PORTEPOCH= 2 CATEGORIES= www MASTER_SITES= http://nginx.org/download/ @@ -38,6 +38,7 @@ OPTIONS_DEFINE= \ HTTP_GZIP_STATIC \ HTTP_GUNZIP_FILTER \ HTTP_IMAGE_FILTER \ + HTTP_MP4 \ HTTP_PERL \ HTTP_RANDOM_INDEX \ HTTP_REALIP \ @@ -56,6 +57,7 @@ OPTIONS_DEFINE= \ THREADS \ WWW \ AJP \ + AWS_AUTH \ CACHE_PURGE \ CLOJURE \ CT \ @@ -73,6 +75,7 @@ OPTIONS_DEFINE= \ HTTP_FOOTER \ HTTP_JSON_STATUS \ HTTP_MOGILEFS \ + HTTP_MP4_H264 \ HTTP_NOTICE \ HTTP_PUSH \ HTTP_PUSH_STREAM \ @@ -82,6 +85,7 @@ OPTIONS_DEFINE= \ HTTP_TARANTOOL \ HTTP_UPLOAD \ HTTP_UPLOAD_PROGRESS \ + HTTP_UPSTREAM_CHECK \ HTTP_UPSTREAM_FAIR \ HTTP_UPSTREAM_STICKY \ HTTP_VIDEO_THUMBEXTRACTOR \ @@ -113,12 +117,13 @@ OPTIONS_DEFINE= \ STATSD \ UDPLOG \ XRID_HEADER \ - XSS \ - VIDEO + XSS -OPTIONS_RADIO= VIDEO -OPTIONS_RADIO_VIDEO= HTTP_MP4 HTTP_MP4_H264 -OPTIONS_DEFAULT= IPV6 HTTP HTTP_CACHE HTTP_REWRITE HTTP_SSL HTTP_STATUS WWW +OPTIONS_DEFAULT=IPV6 FILE_AIO HTTP HTTP_ADDITION HTTP_AUTH_REQ HTTP_CACHE \ + HTTP_DAV HTTP_FLV HTTP_GZIP_STATIC HTTP_GUNZIP_FILTER \ + HTTP_MP4 HTTP_RANDOM_INDEX HTTP_REALIP HTTP_SECURE_LINK \ + HTTP_REWRITE HTTP_SSL HTTP_STATUS HTTP_SUB MAIL MAIL_SSL \ + SPDY WWW DEBUGLOG_DESC= Enable debug log (--with-debug) FILE_AIO_DESC= Enable file aio @@ -152,6 +157,7 @@ SPDY_DESC= Enable SPDY protocol suppor THREADS_DESC= Enable threads support WWW_DESC= Enable html sample files AJP_DESC= 3rd party ajp module +AWS_AUTH_DESC= 3rd party aws auth module CACHE_PURGE_DESC= 3rd party cache_purge module CLOJURE_DESC= 3rd party clojure module CT_DESC= 3rd party cert_transparency module (SSL req.) @@ -179,6 +185,7 @@ HTTP_SUBS_FILTER_DESC= 3rd party subs f HTTP_TARANTOOL_DESC= 3rd party tarantool upstream module HTTP_UPLOAD_DESC= 3rd party upload module HTTP_UPLOAD_PROGRESS_DESC= 3rd party uploadprogress module +HTTP_UPSTREAM_CHECK_DESC= 3rd party upstream check module HTTP_UPSTREAM_FAIR_DESC= 3rd party upstream fair module HTTP_UPSTREAM_STICKY_DESC= 3rd party upstream sticky module HTTP_VIDEO_THUMBEXTRACTOR_DESC= 3rd party video_thumbextractor module @@ -305,12 +312,11 @@ CONFIGURE_ARGS+=--with-http_addition_mod .endif .if ${PORT_OPTIONS:MHTTP_AUTH_DIGEST} -GIT_AUTH_DIGEST_VERSION= bd1c86a -GH_ACCOUNT+= samizdatco:auth_digest +GIT_AUTH_DIGEST_VERSION= 4edfb18 +GH_ACCOUNT+= atomx:auth_digest GH_PROJECT+= nginx-http-auth-digest:auth_digest GH_TAGNAME+= ${GIT_AUTH_DIGEST_VERSION}:auth_digest CONFIGURE_ARGS+=--add-module=${WRKSRC_auth_digest} -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_auth_digest_module.c .endif .if ${PORT_OPTIONS:MHTTP_AUTH_KRB5} @@ -357,6 +363,14 @@ GH_TAGNAME+= ${NGINX_AJP_VERSION}:ajp CONFIGURE_ARGS+=--add-module=${WRKSRC_ajp} .endif +.if ${PORT_OPTIONS:MAWS_AUTH} +NGINX_AWS_AUTH_VERSION= 1e62670 +GH_ACCOUNT+= anomalizer:aws_auth +GH_PROJECT+= ngx_aws_auth:aws_auth +GH_TAGNAME+= ${NGINX_AWS_AUTH_VERSION}:aws_auth +CONFIGURE_ARGS+=--add-module=${WRKSRC_aws_auth} +.endif + .if ${PORT_OPTIONS:MCACHE_PURGE} NGINX_CACHE_PURGE_VERSION= 2.3 MASTER_SITES+= http://labs.frickle.com/files/:cache_purge @@ -510,7 +524,7 @@ USES+= perl5 .endif .if ${PORT_OPTIONS:MHTTP_PUSH} -GIT_PUSH_VERSION= 0.99.8 +GIT_PUSH_VERSION= 0.99.12 GH_ACCOUNT+= slact:push GH_PROJECT+= nchan:push GH_TAGNAME+= v${GIT_PUSH_VERSION}:push @@ -560,7 +574,7 @@ LIB_DEPENDS+= libmsgpuck.so:devel/msgpuc libyajl.so:devel/yajl GH_ACCOUNT+= tarantool:nginx_tarantool GH_PROJECT+= nginx_upstream_module:nginx_tarantool -GH_TAGNAME+= 966f2f5:nginx_tarantool +GH_TAGNAME+= 3599ba0:nginx_tarantool CFLAGS+= -I${LOCALBASE}/include/msgpuck CONFIGURE_ARGS+=--add-module=${WRKSRC_nginx_tarantool} EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_tarantool-config @@ -594,11 +608,28 @@ GH_TAGNAME+= v${NGINX_UPLOADPROGRESS_VER CONFIGURE_ARGS+=--add-module=${WRKSRC_uploadprogress} .endif +.if !empty(PORT_OPTIONS:MHTTP_UPSTREAM_CHECK) +# WWW: https://github.com/yaoweibin/nginx_upstream_check_module +NGINX_UPSTREAM_CHECK_VERSION= 10782ea +GH_ACCOUNT+= yaoweibin:upstreamcheck +GH_PROJECT+= nginx_upstream_check_module:upstreamcheck +GH_TAGNAME+= ${NGINX_UPSTREAM_CHECK_VERSION}:upstreamcheck +CONFIGURE_ARGS+=--add-module=${WRKSRC_upstreamcheck} +EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-src-http-modules-ngx_http_upstream_hash_module.c \ + ${PATCHDIR}/extra-patch-src-http-modules-ngx_http_upstream_ip_hash_module.c \ + ${PATCHDIR}/extra-patch-src-http-modules-ngx_http_upstream_least_conn_module.c \ + ${PATCHDIR}/extra-patch-src-http-ngx_http_upstream_round_robin.c \ + ${PATCHDIR}/extra-patch-src-http-ngx_http_upstream_round_robin.h +.endif + .if !empty(PORT_OPTIONS:MHTTP_UPSTREAM_FAIR) NGINX_UPSTREAM_FAIR_VERSION= 20090923 MASTER_SITES+= LOCAL/osa:upstreamfair DISTFILES+= nginx_upstream_fair-${NGINX_UPSTREAM_FAIR_VERSION}.tar.gz:upstreamfair CONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_upstream_fair-${NGINX_UPSTREAM_FAIR_VERSION} +.if !empty(PORT_OPTIONS:MHTTP_UPSTREAM_CHECK) +EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_upstream_fair_module.c +.endif .endif .if ${PORT_OPTIONS:MHTTP_UPSTREAM_STICKY} @@ -683,7 +714,7 @@ CONFIGURE_ARGS+=--add-module=${WRKSRC_le LIB_DEPENDS+= libluajit-5.1.so:lang/luajit CONFIGURE_ENV+= "LUAJIT_INC=${LOCALBASE}/include/luajit-2.0" CONFIGURE_ENV+= "LUAJIT_LIB=${LOCALBASE}/lib" -NGINX_LUA_VERSION= 7410339 +NGINX_LUA_VERSION= d44f8e0 GH_ACCOUNT+= openresty:lua GH_PROJECT+= lua-nginx-module:lua GH_TAGNAME+= ${NGINX_LUA_VERSION}:lua @@ -803,10 +834,10 @@ EXTRA_PATCHES+= ${PATCHDIR}/extra-patch- .endif .if ${PORT_OPTIONS:MSHIBBOLETH} -GIT_SHIBBOLETH_VERSION= 20150121 +GIT_SHIBBOLETH_VERSION= 4f1119b GH_ACCOUNT+= nginx-shib:shib GH_PROJECT+= nginx-http-shibboleth:shib -GH_TAGNAME+= v${GIT_SHIBBOLETH_VERSION}:shib +GH_TAGNAME+= ${GIT_SHIBBOLETH_VERSION}:shib CONFIGURE_ARGS+=--add-module=${WRKSRC_shib} .endif @@ -920,7 +951,7 @@ CONFIGURE_ARGS+=--add-module=${WRKSRC_ar .endif .if ${PORT_OPTIONS:MBROTLI} -NGINX_BROTLI_VERSION= 86998c6 +NGINX_BROTLI_VERSION= 2fc6f12 LIB_DEPENDS+= libbrotlidec.so:devel/libbrotli \ libbrotlienc.so:devel/libbrotli GH_ACCOUNT+= google:brotli Modified: branches/2016Q2/www/nginx/distinfo ============================================================================== --- branches/2016Q2/www/nginx/distinfo Sun Jun 5 17:44:01 2016 (r416406) +++ branches/2016Q2/www/nginx/distinfo Sun Jun 5 17:44:02 2016 (r416407) @@ -32,14 +32,16 @@ SHA256 (nginx_udplog_module-1.0.0.tar.gz SIZE (nginx_udplog_module-1.0.0.tar.gz) = 6284 SHA256 (giom-nginx_accept_language_module-2f69842_GH0.tar.gz) = 5534ca63cdfc2a7dc4e1cbf9c2d54d3ed3f0e6c86b4a95be48ec0a3f41cc1eb0 SIZE (giom-nginx_accept_language_module-2f69842_GH0.tar.gz) = 3393 -SHA256 (samizdatco-nginx-http-auth-digest-bd1c86a_GH0.tar.gz) = d3071ca4b70cfd7f437add772a2aa6ab585dafb5d5a2e3f5cc70af74da72acf2 -SIZE (samizdatco-nginx-http-auth-digest-bd1c86a_GH0.tar.gz) = 14458 +SHA256 (atomx-nginx-http-auth-digest-4edfb18_GH0.tar.gz) = 8b831fccda3ce9bdf854a3aefa1e466a8da97ca0a5feb33a28b4f117f517b82e +SIZE (atomx-nginx-http-auth-digest-4edfb18_GH0.tar.gz) = 16007 SHA256 (stnoonan-spnego-http-auth-nginx-module-c85a38c_GH0.tar.gz) = b47b23a362aa338c377d6163d15abee6f33ff16bac5f86ee4d9543293fe8c4d1 SIZE (stnoonan-spnego-http-auth-nginx-module-c85a38c_GH0.tar.gz) = 18120 SHA256 (kvspb-nginx-auth-ldap-8517bb0_GH0.tar.gz) = a69cf8d5490620d5507d712fa234e137d9404e9c250563f2eb421eafa6209975 SIZE (kvspb-nginx-auth-ldap-8517bb0_GH0.tar.gz) = 16947 SHA256 (yaoweibin-nginx_ajp_module-bf6cd93_GH0.tar.gz) = 9e3f78ea73e2d606a95ee64fd3affa4c249f9b342e66b6b11b63061791f28316 SIZE (yaoweibin-nginx_ajp_module-bf6cd93_GH0.tar.gz) = 109704 +SHA256 (anomalizer-ngx_aws_auth-1e62670_GH0.tar.gz) = db7ceef4ae22cf5bfaf5abae64830dfeef203ca85f9f40f7d1f1d90f277478c0 +SIZE (anomalizer-ngx_aws_auth-1e62670_GH0.tar.gz) = 8260 SHA256 (nginx-clojure-nginx-clojure-v0.4.4_GH0.tar.gz) = 642ebf4724fa7c3efd5349e60b442ac8671497406834804c903ec548bfdcb691 SIZE (nginx-clojure-nginx-clojure-v0.4.4_GH0.tar.gz) = 603856 SHA256 (grahamedgecombe-nginx-ct-f3cad5e_GH0.tar.gz) = 846e148f09ffea2ffc1b09b20c84408e23c170313f967513a85009717227c13a @@ -60,18 +62,20 @@ SHA256 (nginx-modules-ngx_http_json_stat SIZE (nginx-modules-ngx_http_json_status_module-1d2f303_GH0.tar.gz) = 6736 SHA256 (kr-nginx-notice-3c95966_GH0.tar.gz) = e829fc94178cc8c91fef15a1fc44ee7ac162c13eddc0bba4c9427aaa23386885 SIZE (kr-nginx-notice-3c95966_GH0.tar.gz) = 3343 -SHA256 (slact-nchan-v0.99.8_GH0.tar.gz) = 3b25cbd7aff9742dac15d64d55f67a4ab83fc52053111ddd3fd0b8f2932682d1 -SIZE (slact-nchan-v0.99.8_GH0.tar.gz) = 344368 +SHA256 (slact-nchan-v0.99.12_GH0.tar.gz) = b761255489c617aa270910f3ba02af1adbd42e299116cdd465c80dda1b2acf07 +SIZE (slact-nchan-v0.99.12_GH0.tar.gz) = 358336 SHA256 (wandenberg-nginx-push-stream-module-0.5.1_GH0.tar.gz) = a95f31e80120fd7324795b92a0d94c0b43e1265df7fd0f1eba11a337c1e0a626 SIZE (wandenberg-nginx-push-stream-module-0.5.1_GH0.tar.gz) = 175263 SHA256 (yaoweibin-ngx_http_substitutions_filter_module-v0.6.4_GH0.tar.gz) = ed4ddbcf0c434f4a1e97b61251a63ace759792764bd5cb79ff20efe348db8db3 SIZE (yaoweibin-ngx_http_substitutions_filter_module-v0.6.4_GH0.tar.gz) = 92230 -SHA256 (tarantool-nginx_upstream_module-966f2f5_GH0.tar.gz) = 8142475d8ecf0c02d2fc8051364729d842fe06b0b445b416c87c2f796bb42fa7 -SIZE (tarantool-nginx_upstream_module-966f2f5_GH0.tar.gz) = 873343 +SHA256 (tarantool-nginx_upstream_module-3599ba0_GH0.tar.gz) = 9f4c60a742786b3507fb69fb9fb653cec08114399ce0e65a06ea5fb532030713 +SIZE (tarantool-nginx_upstream_module-3599ba0_GH0.tar.gz) = 877305 SHA256 (vkholodkov-nginx-upload-module-aba1e3f34c_GH0.tar.gz) = 62a2c4388585aec463a1cee30bc84953593a93f341dc1df61b42b452594d2a05 SIZE (vkholodkov-nginx-upload-module-aba1e3f34c_GH0.tar.gz) = 28296 SHA256 (masterzen-nginx-upload-progress-module-v0.9.0_GH0.tar.gz) = 93e29b9b437a2e34713de54c2861ea51151624aca09f73f9f44d1caaff01a6b1 SIZE (masterzen-nginx-upload-progress-module-v0.9.0_GH0.tar.gz) = 16990 +SHA256 (yaoweibin-nginx_upstream_check_module-10782ea_GH0.tar.gz) = 52e6acd8c0264a59c5c948271015a59acd3cbcf91377456b7c8dc6f9feecef4a +SIZE (yaoweibin-nginx_upstream_check_module-10782ea_GH0.tar.gz) = 128281 SHA256 (wandenberg-nginx-video-thumbextractor-module-0.7.0_GH0.tar.gz) = 382bb41fa739f471fdab9fbabc5384d8ec7f25b5bb0c45c153f5cc01d428abe2 SIZE (wandenberg-nginx-video-thumbextractor-module-0.7.0_GH0.tar.gz) = 2709351 SHA256 (openresty-drizzle-nginx-module-v0.1.9_GH0.tar.gz) = aafb79d87273eec023025333c34d6d0108026a1ce2e09b20a53e8e2d9bf65080 @@ -86,8 +90,8 @@ SHA256 (mongodb-mongo-c-driver-v0.3.1_GH SIZE (mongodb-mongo-c-driver-v0.3.1_GH0.tar.gz) = 53024 SHA256 (arut-nginx-let-module-v0.0.4_GH0.tar.gz) = cbf6fcddc00a7e30289134bdeace12565e000cc7d4efee2d2ebb8799d0b88270 SIZE (arut-nginx-let-module-v0.0.4_GH0.tar.gz) = 20534 -SHA256 (openresty-lua-nginx-module-7410339_GH0.tar.gz) = 1b78f243ea95efcfd6f5bda43fbe5849bff931b9620d22c75b3de6590e09c684 -SIZE (openresty-lua-nginx-module-7410339_GH0.tar.gz) = 574764 +SHA256 (openresty-lua-nginx-module-d44f8e0_GH0.tar.gz) = e63997f54dc01dcef82598f4423e5433ac46a26606ea9e8b59f631374b326e42 +SIZE (openresty-lua-nginx-module-d44f8e0_GH0.tar.gz) = 575604 SHA256 (openresty-memc-nginx-module-v0.16_GH0.tar.gz) = 24f3c3270831aed2d157c01ef74cb26eab26b832971fe7b9f42a03dbfac10ce4 SIZE (openresty-memc-nginx-module-v0.16_GH0.tar.gz) = 38560 SHA256 (nbs-system-naxsi-0.54_GH0.tar.gz) = 9cc2c09405bc71f78ef26a8b6d70afcea3fccbe8125df70cb0cfc480133daba5 @@ -104,8 +108,8 @@ SHA256 (arut-nginx-rtmp-module-v1.1.7_GH SIZE (arut-nginx-rtmp-module-v1.1.7_GH0.tar.gz) = 519735 SHA256 (openresty-set-misc-nginx-module-6582fb4_GH0.tar.gz) = cc325830477dfcdbb355fc7b19cbc2f4e55c179b3b56fdfe0613b5a7b926235e SIZE (openresty-set-misc-nginx-module-6582fb4_GH0.tar.gz) = 35961 -SHA256 (nginx-shib-nginx-http-shibboleth-v20150121_GH0.tar.gz) = e38a19bb4d30e5487c013c4b6b3e3d5b96de82d63b776471cc2c381a5d00374d -SIZE (nginx-shib-nginx-http-shibboleth-v20150121_GH0.tar.gz) = 10106 +SHA256 (nginx-shib-nginx-http-shibboleth-4f1119b_GH0.tar.gz) = c25f284bc934f59a267d319385a3e11858efef786c84b49a77d09e7f5274bbf1 +SIZE (nginx-shib-nginx-http-shibboleth-4f1119b_GH0.tar.gz) = 16688 SHA256 (cubicdaiya-ngx_small_light-v0.6.15_GH0.tar.gz) = 9bc9c221287a6db56a4a0eb7ac35a560fc15dfd6dafcb500fdea49a583527716 SIZE (cubicdaiya-ngx_small_light-v0.6.15_GH0.tar.gz) = 54695 SHA256 (openresty-srcache-nginx-module-v0.30_GH0.tar.gz) = e34b1ab5f5007661f73819f9c20fd6c2a46ed3e53364e9449b02ef2bd3628633 @@ -118,8 +122,8 @@ SHA256 (openresty-xss-nginx-module-v0.04 SIZE (openresty-xss-nginx-module-v0.04_GH0.tar.gz) = 10536 SHA256 (openresty-array-var-nginx-module-v0.03_GH0.tar.gz) = f9892ec9a2e872d8aabeb2234d0d4c66cf85b8dbb2ca5c108a20c3d8c2111189 SIZE (openresty-array-var-nginx-module-v0.03_GH0.tar.gz) = 9520 -SHA256 (google-ngx_brotli-86998c6_GH0.tar.gz) = 463a583cfbeacdf6d6db5630afaddc9eebeec44301ca68c660cc8fdf4580e5aa -SIZE (google-ngx_brotli-86998c6_GH0.tar.gz) = 10890 +SHA256 (google-ngx_brotli-2fc6f12_GH0.tar.gz) = f72daeb63db97e4facf99f6917f55f5d33e52f7f18d87c01fac05ec50274054f +SIZE (google-ngx_brotli-2fc6f12_GH0.tar.gz) = 10960 SHA256 (calio-form-input-nginx-module-v0.07_GH0.tar.gz) = c0c56cc697a290e98b88d4888bac8828041ef6f3049247d3cd3c63f2808d1e20 SIZE (calio-form-input-nginx-module-v0.07_GH0.tar.gz) = 10563 SHA256 (calio-iconv-nginx-module-v0.10_GH0.tar.gz) = 88e326eba7fdf9fd2376b1ba033b48cb0eee45136528cf5430ac9340088ce324 Modified: branches/2016Q2/www/nginx/files/extra-patch-ngx_http_tarantool-config ============================================================================== --- branches/2016Q2/www/nginx/files/extra-patch-ngx_http_tarantool-config Sun Jun 5 17:44:01 2016 (r416406) +++ branches/2016Q2/www/nginx/files/extra-patch-ngx_http_tarantool-config Sun Jun 5 17:44:02 2016 (r416407) @@ -1,5 +1,5 @@ ---- ../nginx_upstream_module-966f2f5/config.orig 2015-08-20 23:33:02.000000000 +0300 -+++ ../nginx_upstream_module-966f2f5/config 2015-08-23 16:04:59.572045669 +0300 +--- ../nginx_upstream_module-3599ba0/config.orig 2015-08-20 23:33:02.000000000 +0300 ++++ ../nginx_upstream_module-3599ba0/config 2015-08-23 16:04:59.572045669 +0300 @@ -4,7 +4,7 @@ " Copied: branches/2016Q2/www/nginx/files/extra-patch-ngx_http_upstream_fair_module.c (from r413165, head/www/nginx/files/extra-patch-ngx_http_upstream_fair_module.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q2/www/nginx/files/extra-patch-ngx_http_upstream_fair_module.c Sun Jun 5 17:44:02 2016 (r416407, copy of r413165, head/www/nginx/files/extra-patch-ngx_http_upstream_fair_module.c) @@ -0,0 +1,89 @@ +--- ../nginx_upstream_fair-20090923/ngx_http_upstream_fair_module.c.orig 2009-09-24 01:38:16.000000000 +0800 ++++ ../nginx_upstream_fair-20090923/ngx_http_upstream_fair_module.c 2016-03-24 13:56:02.990728000 +0800 +@@ -9,6 +9,10 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++#include "ngx_http_upstream_check_module.h" ++#endif ++ + typedef struct { + ngx_uint_t nreq; + ngx_uint_t total_req; +@@ -42,6 +46,10 @@ + ngx_uint_t max_fails; + time_t fail_timeout; + ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ ngx_uint_t check_index; ++#endif ++ + time_t accessed; + ngx_uint_t down:1; + +@@ -474,6 +482,15 @@ + peers->peer[n].fail_timeout = server[i].fail_timeout; + peers->peer[n].down = server[i].down; + peers->peer[n].weight = server[i].down ? 0 : server[i].weight; ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ if (!server[i].down) { ++ peers->peer[n].check_index = ++ ngx_http_upstream_check_add_peer(cf, us, &server[i].addrs[j]); ++ } ++ else { ++ peers->peer[n].check_index = (ngx_uint_t) NGX_ERROR; ++ } ++#endif + n++; + } + } +@@ -524,6 +541,15 @@ + backup->peer[n].max_fails = server[i].max_fails; + backup->peer[n].fail_timeout = server[i].fail_timeout; + backup->peer[n].down = server[i].down; ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ if (!server[i].down) { ++ backup->peer[n].check_index = ++ ngx_http_upstream_check_add_peer(cf, us, &server[i].addrs[j]); ++ } ++ else { ++ backup->peer[n].check_index = (ngx_uint_t) NGX_ERROR; ++ } ++#endif + n++; + } + } +@@ -580,6 +606,9 @@ + peers->peer[i].weight = 1; + peers->peer[i].max_fails = 1; + peers->peer[i].fail_timeout = 10; ++#if (NGX_HTTP_UPSTREAM_CHECK) ++ peers->peer[i].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + } + + us->peer.data = peers; +@@ -721,6 +750,12 @@ *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201606051744.u55Hi2cl001401>