diff --git a/www/varnish7/Makefile b/www/varnish7/Makefile index 6368d46af374..14e9dc42e141 100644 --- a/www/varnish7/Makefile +++ b/www/varnish7/Makefile @@ -1,53 +1,54 @@ PORTNAME= varnish DISTVERSION= 7.3.0 +PORTREVISION= 1 CATEGORIES= www MASTER_SITES= https://varnish-cache.org/downloads/ PKGNAMESUFFIX= 7 MAINTAINER= dbaio@FreeBSD.org COMMENT= High-performance HTTP accelerator WWW= https://varnish-cache.org/ LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= rst2man:textproc/py-docutils@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR} LIB_DEPENDS= libpcre2-8.so:devel/pcre2 USES= cpe libedit libtool localbase ncurses pathfix \ pkgconfig python:build shebangfix tar:tgz CPE_VENDOR= varnish-cache CPE_PRODUCT= varnish_cache GNU_CONFIGURE= yes SHEBANG_FILES= lib/libvcc/*.py lib/libvsc/*.py USE_LDCONFIG= yes USE_RC_SUBR= varnishd varnishlog varnishncsa CONFLICTS= varnish4 varnish6 SUB_FILES= pkg-message USERS= varnish varnishlog GROUPS= varnish INSTALL_TARGET= install-strip TEST_TARGET= check TEST_ARGS= TESTS_PARALLELISM=1 CONFIGURE_ARGS= --localstatedir=${PREFIX} --without-dot # Needed for clang 15 (#268814) CONFIGURE_ENV+= ax_cv_check_cflags___Werror=no .if defined(NO_INET6) || defined(WITHOUT_INET6) BAD_TESTS= r00832 EXTRA_PATCHES= ${FILESDIR}/no-inet6.patch .endif OPTIONS_DEFINE= DOCS post-patch: .if defined(BAD_TESTS) ${RM} ${BAD_TESTS:C|.+|${WRKSRC}/bin/varnishtest/tests/\0.vtc|} .endif .include diff --git a/www/varnish7/files/patch-bin_varnishd_http2_cache__http2__hpack.c b/www/varnish7/files/patch-bin_varnishd_http2_cache__http2__hpack.c new file mode 100644 index 000000000000..5c3310815192 --- /dev/null +++ b/www/varnish7/files/patch-bin_varnishd_http2_cache__http2__hpack.c @@ -0,0 +1,16 @@ +--- bin/varnishd/http2/cache_http2_hpack.c.orig 2023-03-15 08:52:02 UTC ++++ bin/varnishd/http2/cache_http2_hpack.c +@@ -135,10 +135,9 @@ h2h_addhdr(struct http *hp, char *b, size_t namelen, s + n = HTTP_HDR_URL; + disallow_empty = 1; + +- // rfc7540,l,3060,3071 +- if (((len > 0 && *b != '/') || +- (len > 1 && *(b+1) == '/')) && +- (strncmp(b, "*", len) != 0)) { ++ // rfc9113,l,2693,2705 ++ if (len > 0 && *b != '/' && ++ strncmp(b, "*", len) != 0) { + VSLb(hp->vsl, SLT_BogoHeader, + "Illegal :path pseudo-header %.*s", + (int)len, b);