head	1.22;
access;
symbols
	pkgsrc-2026Q3:1.22.0.2
	pkgsrc-2026Q3-base:1.22
	pkgsrc-2026Q2:1.16.0.2
	pkgsrc-2026Q2-base:1.16
	pkgsrc-2026Q1:1.6.0.2
	pkgsrc-2026Q1-base:1.6
	pkgsrc-2025Q4:1.1.0.2
	pkgsrc-2025Q4-base:1.1;
locks; strict;
comment	@# @;


1.22
date	2026.09.02.19.04.58;	author wiz;	state Exp;
branches;
next	1.21;
commitid	vXszxoxOqka005UG;

1.21
date	2026.09.02.17.28.16;	author osa;	state Exp;
branches;
next	1.20;
commitid	j44x5pNRdrtwu4UG;

1.20
date	2026.09.02.17.21.26;	author osa;	state Exp;
branches;
next	1.19;
commitid	jMXjRunfgBcas4UG;

1.19
date	2026.07.16.19.05.40;	author wiz;	state Exp;
branches;
next	1.18;
commitid	FQnRlmCjzrRuxUNG;

1.18
date	2026.07.08.19.34.58;	author osa;	state Exp;
branches;
next	1.17;
commitid	Hl5HjdqaTzvAZSMG;

1.17
date	2026.06.28.17.34.40;	author osa;	state Exp;
branches;
next	1.16;
commitid	0nsxWfOfCbC6EALG;

1.16
date	2026.05.31.15.24.37;	author osa;	state Exp;
branches;
next	1.15;
commitid	v7fiL8MpuL60PYHG;

1.15
date	2026.05.28.08.58.01;	author osa;	state Exp;
branches;
next	1.14;
commitid	vZrl8mM7PbOMMyHG;

1.14
date	2026.05.21.10.37.15;	author osa;	state Exp;
branches;
next	1.13;
commitid	wn3whcLw7H8syFGG;

1.13
date	2026.05.21.10.23.21;	author osa;	state Exp;
branches;
next	1.12;
commitid	5V2ihNggL4c0uFGG;

1.12
date	2026.05.21.10.17.06;	author osa;	state Exp;
branches;
next	1.11;
commitid	IprkjwqGabqOrFGG;

1.11
date	2026.05.10.11.59.32;	author osa;	state Exp;
branches;
next	1.10;
commitid	e7IUUj6TzPWVmgFG;

1.10
date	2026.05.10.11.52.41;	author osa;	state Exp;
branches;
next	1.9;
commitid	Sgqno7yKMSdAkgFG;

1.9
date	2026.04.23.14.05.59;	author osa;	state Exp;
branches;
next	1.8;
commitid	3FmBDOcrYjU7C5DG;

1.8
date	2026.04.14.14.47.27;	author osa;	state Exp;
branches;
next	1.7;
commitid	ha1qszwIZixX7WBG;

1.7
date	2026.04.14.14.31.10;	author osa;	state Exp;
branches;
next	1.6;
commitid	zZ3UYDtkyIEL2WBG;

1.6
date	2026.03.10.17.28.13;	author osa;	state Exp;
branches;
next	1.5;
commitid	zoLLVwa0UYDc9sxG;

1.5
date	2026.03.04.18.47.08;	author osa;	state Exp;
branches;
next	1.4;
commitid	hGmoJvRz7pTiMGwG;

1.4
date	2026.01.07.08.49.18;	author wiz;	state Exp;
branches;
next	1.3;
commitid	1wQ3ICD8eebefrpG;

1.3
date	2025.12.25.18.58.29;	author osa;	state Exp;
branches;
next	1.2;
commitid	dDHFQl6WsBcD3PnG;

1.2
date	2025.12.25.18.01.00;	author osa;	state Exp;
branches;
next	1.1;
commitid	Wh2USqQOmVMPJOnG;

1.1
date	2025.11.21.17.19.48;	author osa;	state Exp;
branches;
next	;
commitid	ioQlUaxIpWL8BrjG;


desc
@@


1.22
log
@*: recursive bump for pcre2 10.48
@
text
@# $NetBSD: Makefile,v 1.21 2026/09/02 17:28:16 osa Exp $

DISTNAME=	freenginx-1.31.4
PKGNAME=	${DISTNAME:S/-/-devel-/1}
PKGREVISION=	1
CATEGORIES=	www
MASTER_SITES=	https://freenginx.org/download/
DISTFILES=	${DEFAULT_DISTFILES}

MAINTAINER=	osa@@NetBSD.org
HOMEPAGE=	https://freenginx.org/
COMMENT=	Lightweight HTTP server and mail proxy server
LICENSE=	2-clause-bsd

CONFLICTS=	freenginx-[0-9]* nginx-[0-9]* nginx-devel-[0-9]*

.include "../../mk/bsd.prefs.mk"

NGINX_USER?=		nginx
NGINX_GROUP?=		nginx
NGINX_DATADIR?=		${VARBASE}/db/nginx
NGINX_LOGDIR?=		${VARBASE}/log/nginx
NGINX_PIDDIR?=		${VARBASE}/run

BUILD_DEFS+=		NGINX_DATADIR NGINX_LOGDIR NGINX_PIDDIR VARBASE

PKG_USERS_VARS+=	NGINX_USER
PKG_GROUPS_VARS+=	NGINX_GROUP
PKG_GROUPS=		${NGINX_GROUP}
PKG_USERS=		${NGINX_USER}:${NGINX_GROUP}

PKG_GECOS.${NGINX_USER}=	NGINX server user
PKG_HOME.${NGINX_USER}=		${NGINX_DATADIR}
PKG_SHELL.${NGINX_USER}=	${NOLOGIN}

USE_PKGLOCALEDIR=	yes
HAS_CONFIGURE=		yes
CONFIGURE_ARGS+=	--user=${NGINX_USER}
CONFIGURE_ARGS+=	--group=${NGINX_GROUP}
CONFIGURE_ARGS+=	--with-ld-opt=-L${PREFIX}/lib\ ${COMPILER_RPATH_FLAG}${PREFIX}/lib
CONFIGURE_ARGS+=	--prefix=${PREFIX}
CONFIGURE_ARGS+=	--sbin-path=${PREFIX}/sbin
CONFIGURE_ARGS+=	--conf-path=${PKG_SYSCONFDIR}/nginx.conf
CONFIGURE_ARGS+=	--pid-path=${NGINX_PIDDIR}/nginx.pid
CONFIGURE_ARGS+=	--lock-path=${NGINX_DATADIR}/nginx.lock
CONFIGURE_ARGS+=	--error-log-path=${NGINX_LOGDIR}/error.log
CONFIGURE_ARGS+=	--http-log-path=${NGINX_LOGDIR}/access.log
CONFIGURE_ARGS+=	--http-client-body-temp-path=${NGINX_DATADIR}/client_body_temp
CONFIGURE_ARGS+=	--http-proxy-temp-path=${NGINX_DATADIR}/proxy_temp
CONFIGURE_ARGS+=	--http-fastcgi-temp-path=${NGINX_DATADIR}/fstcgi_temp
CONFIGURE_ARGS+=	--http-scgi-temp-path=${NGINX_DATADIR}/scgi_temp
CONFIGURE_ARGS+=	--with-pcre

SUBST_CLASSES+=			fix-pcre2
SUBST_STAGE.fix-pcre2=		pre-configure
SUBST_FILES.fix-pcre2=		auto/lib/pcre/conf
SUBST_SED.fix-pcre2=		-e 's,/usr/pkg,${BUILDLINK_PREFIX.pcre2},g'
SUBST_NOOP_OK.fix-pcre2=	yes

PKG_SYSCONFSUBDIR=	nginx

.include "options.mk"

EGDIR=			${PREFIX}/share/examples/freenginx
EGFILES+=		fastcgi.conf fastcgi_params koi-utf koi-win \
			mime.types nginx.conf win-utf

.for file in ${EGFILES}
CONF_FILES+=	${EGDIR}/conf/${file} ${PKG_SYSCONFDIR}/${file}
.  if !empty(PKG_OPTIONS:Mnginx-naxsi)
CONF_FILES+=	${EGDIR}/conf/naxsi_core.rules ${PKG_SYSCONFDIR}/naxsi_core.rules
.  endif
.endfor

RCD_SCRIPTS=		nginx

INSTALLATION_DIRS+=	${PKGMANDIR}/man8 sbin share/examples/freenginx/conf \
			share/examples/freenginx/html
MAKE_DIRS+=		${NGINX_PIDDIR}
OWN_DIRS=		${NGINX_LOGDIR}
OWN_DIRS_PERMS+=	${NGINX_DATADIR} ${NGINX_USER} ${NGINX_GROUP} 0700

BUILD_TARGET=		build

SUBST_CLASSES+=		paths
SUBST_STAGE.paths=	pre-configure
SUBST_FILES.paths=	conf/nginx.conf
SUBST_SED.paths=	-e 's,%%PKG_SYSCONFDIR%%,${PKG_SYSCONFDIR},g'
SUBST_SED.paths+=	-e 's,%%NGINX_LOGDIR%%,${NGINX_LOGDIR},g'
SUBST_SED.paths+=	-e 's,%%NGINX_PIDDIR%%,${NGINX_PIDDIR},g'
SUBST_SED.paths+=	-e 's,%%NGINX_USER%%,${NGINX_USER},g'
SUBST_SED.paths+=	-e 's,%%NGINX_GROUP%%,${NGINX_GROUP},g'

MESSAGE_SUBST+=		NGINX_LOGDIR=${NGINX_LOGDIR}
MESSAGE_SUBST+=		NGINX_PIDDIR=${NGINX_PIDDIR}
MESSAGE_SUBST+=		NGINX_USER=${NGINX_USER}
MESSAGE_SUBST+=		NGINX_GROUP=${NGINX_GROUP}

.if ${OPSYS} == "Darwin"
SOEXT=		bundle
.else
SOEXT=		so
.endif
PLIST_SUBST+=	SOEXT=${SOEXT}

post-patch:
.if !empty(PKG_OPTIONS:Mnginx-brotli)
	cd ${WRKSRC} && ${PATCH} < ${PATCHDIR}/extra-patch-ngx_brotli_filter_config
.endif
.if !empty(PKG_OPTIONS:Mnginx-gssapi)
	${SED} -i.bak '4d;5d;6d' ${WRKDIR}/${GSSAPI_DISTNAME}/config
.endif
.if !empty(PKG_OPTIONS:Mnginx-naxsi)
	${SED} -i.bak '308,309s/MSIZE/NAXSI_MSIZE/g' \
		${WRKSRC}/..${NAXSI_SUBDIR}/libinjection/src/libinjection_sqli.c
.endif
.if defined(NEED_NDK)
	cd ${WRKSRC} && ${PATCH} < ${PATCHDIR}/extra-patch-ndk_set_var.c
.endif
.if !empty(PKG_OPTIONS:Mnginx-njs)
	cd ${WRKSRC} && ${PATCH} < ${PATCHDIR}/extra-patch-njs-quickjs
.endif
.if !empty(PKG_OPTIONS:Mnginx-upload)
	cd ${WRKSRC} && ${PATCH} < ${PATCHDIR}/extra-patch-ngx_http_upload_module.c
.endif

do-install:
	${INSTALL_PROGRAM} ${WRKSRC}/objs/nginx ${DESTDIR}${PREFIX}/sbin/nginx
.for file in ${EGFILES}
	${INSTALL_DATA} ${WRKSRC}/conf/${file} ${DESTDIR}${EGDIR}/conf/${file}
.endfor
	${INSTALL_DATA} ${WRKSRC}/html/50x.html ${DESTDIR}${EGDIR}/html/50x.html
	${INSTALL_DATA} ${WRKSRC}/html/index.html ${DESTDIR}${EGDIR}/html/index.html
	${INSTALL_MAN} ${WRKSRC}/objs/nginx.8 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man8
.if !empty(PKG_OPTIONS:Mnginx-naxsi)
	${INSTALL_DATA} ${WRKDIR}/naxsi_rules/naxsi_core.rules ${DESTDIR}${EGDIR}/conf
.endif
.if !empty(PKG_OPTIONS:Mnginx-perl)
	${INSTALL_LIB_DIR} ${DESTDIR}${PERL5_INSTALLVENDORARCH}/auto/nginx
	${INSTALL_LIB} ${WRKSRC}/objs/src/http/modules/perl/blib/arch/auto/nginx/nginx.${SOEXT} \
		${DESTDIR}${PERL5_INSTALLVENDORARCH}/auto/nginx
	${INSTALL_DATA} ${WRKSRC}/objs/src/http/modules/perl/blib/lib/nginx.pm \
		${DESTDIR}${PERL5_INSTALLVENDORARCH}
.endif
.if !empty(PKG_OPTIONS:Mnginx-dso)
	${INSTALL_LIB_DIR} ${DESTDIR}${PREFIX}/libexec/freenginx
	(cd ${WRKSRC}/objs/ && ${FIND} . -name '*.so' -maxdepth 1 -type f \
		-exec ${INSTALL_PROGRAM} {} ${DESTDIR}${PREFIX}/libexec/freenginx \;)
.endif

.include "../../devel/pcre2/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
@


1.21
log
@www/freenginx-devel: update from 1.31.3 to 1.31.4

Sponsored by:	tipi.work

<ChangeLog>

*) Bugfix: the "index" directive used old values of non-cacheable
   variables.

*) Bugfix: variables with side effects might cause incorrect results
   during variable substitution and "no buffer space in script copy"
   alerts.

*) Bugfix: a segmentation fault might occur in a worker process when
   using regular expression captures with the
   "proxy_cache_background_update" directive or the
   ngx_http_slice_module.

*) Bugfix: in the ngx_http_perl_module; the bug had appeared in 1.31.3.

*) Bugfix: "header already sent" alerts might appear in logs when using
   SSI with proxying.

*) Bugfix: some data received from a backend with unbuffered proxying
   might not be sent to the client immediately when using SSI and the
   "gunzip" directive.

*) Change: now, if a connection to a backend is closed due to a timeout
   during buffered proxying, all data previously received from the
   backend are sent to the client.

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.20 2026/09/02 17:21:26 osa Exp $
d5 1
@


1.20
log
@www/freenginx-devel: update njs 1.0.0 -> 1.0.1

Bump PKGREVISION.

Sponsored by:	tipi.work

<ChangeLog>

nginx modules:

*) Security: fixed an access control bypass in js_access when an
   asynchronous request body continuation threw an exception or
   produced an unhandled rejection.  Previously, nginx could continue
   processing the request as though the js_access check had succeeded.
   Thanks to Ta Duc Thien.

*) Security: fixed a worker process crash when reading
   Response.statusText after an upstream server returned a status
   line with an empty reason phrase.

*) Bugfix: fixed unhandled promise rejection tracking in reused
   QuickJS contexts.

*) Bugfix: fixed SharedDict.pop() returning undefined for unexpired
   entries in shared dictionaries with a timeout.

*) Bugfix: fixed validation and replacement of Fetch Headers values.
   This also fixed dangling header names in the QuickJS engine.

*) Bugfix: fixed missing validation of r.headersOut names and values,
   and of redirect targets passed to r.return().

*) Bugfix: fixed use-after-free, worker aborts, and leaks caused by
   cyclic references involving Fetch, HTTP request, and Stream session
   objects in the QuickJS engine.

*) Bugfix: fixed QuickJS context reuse after internal redirects and
   when pending jobs remained after request teardown.

*) Bugfix: fixed cleanup of partially initialized JavaScript contexts
   when request setup failed.

Core:

*) Security: fixed a heap buffer overflow while parsing namespace
   prefix lists passed to XML exclusive canonicalization.
   Thanks to Vladimir Vulnerability Research Tech Lead @@ Cyera,
   evilgensec.

*) Bugfix: fixed a stack buffer overflow when exporting RSA keys
   larger than 4096 bits to JWK in WebCrypto.
   Thanks to Vaibhav Rajput.

*) Bugfix: fixed RSA-OAEP encryption and decryption with SHA-256 and
   SHA-384 digests in WebCrypto.

*) Bugfix: fixed compatibility with quickjs-ng 0.16.0 and later.

*) Bugfix: fixed empty stack traces for QuickJS errors created by
   host callbacks.

*) Feature: added btoa() and atob() global functions to the QuickJS
   engine and aligned their behavior between both engines.

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.19 2026/07/16 19:05:40 wiz Exp $
d3 1
a3 1
DISTNAME=	freenginx-1.31.3
a4 1
PKGREVISION=	2
@


1.19
log
@*: recursive bump for perl5 5.44.0
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.18 2026/07/08 19:34:58 osa Exp $
d5 1
a5 1
PKGREVISION=	1
@


1.18
log
@www/freenginx-devel: update from 1.31.2 to 1.31.3

Sponsored by:	tipi.work

<ChangeLog>

*) Feature: additional checks are now used during variable substitution,
   including during execution of the ngx_http_rewrite_module directives,
   to prevent buffer overruns in case of errors in the code.

*) Bugfix: if the "auth_request_set" directive or regular expression
   named captures were used to change prefix variables, such as
   "$http_...", corresponding variables became empty in other parts of
   the configuration.

*) Bugfix: changing the $limit_rate and $args variables with the
   "auth_request_set" directive or regular expression named captures
   worked incorrectly.

*) Bugfix: in error handling in the mail proxy module.
   Thanks to Evan Hellman, Trail of Bits.

*) Bugfix: in error handling when using gzipping.
   Thanks to Evan Hellman, Trail of Bits.

*) Bugfix: in HTTP/3.

*) Bugfix: a segmentation fault might occur in a worker process when
   sending very long request header lines to a gRPC backend.
   Thanks to Evan Hellman, Trail of Bits.

*) Bugfix: a segmentation fault might occur in a worker process if the
   ngx_http_charset_module was used to convert responses from UTF-8.

*) Bugfix: in the ngx_http_perl_module.
   Thanks to Evan Hellman, Trail of Bits and Axel Mierczuk, Keith
   Hoodlet, 1Password's Off-by-1 Labs.

*) Bugfix: in error handling when using the proxy_no_cache directive.
   Thanks to Valentin Bartenev.

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.17 2026/06/28 17:34:40 osa Exp $
d5 1
@


1.17
log
@www/freenginx-devel: update njs: 0.9.9 -> 1.0.0

Enable quickjs engine.

Bump PKGREVISION.

Sponsored by:	tipi.work

<ChangeLog>

nginx modules:

*) Improvement: aligned HTTP, Stream, and Fetch exception classes
   between the njs and QuickJS engines.  API misuse is now reported
   as TypeError and status bounds violations as RangeError.

*) Improvement: rejected unsafe request targets, methods, and header
   values in ngx.fetch() before request serialization.

*) Bugfix: fixed a heap use-after-free in r.subrequest() when the
   client closed the connection before the background subrequest
   completed.  The issue was introduced in 75d6b61 (0.9.5).
   This closes #1077 issue on Github.

*) Bugfix: fixed a worker segfault while reading a request header
   that nginx registers without a dedicated slot, such as
   "Proxy-Connection", via r.headersIn.
   This closes #1071 issue on Github.

*) Bugfix: excluded unverified-TLS and dynamic-proxy connections
   from the ngx.fetch() keepalive cache and validated cached
   connections before reuse.

*) Bugfix: fixed Content-Length truncation for very large request
   bodies and a missing CONNECT terminator for proxies configured
   without credentials in ngx.fetch().

*) Bugfix: fixed leaks of promises, events, and init property values
   on ngx.fetch() failure paths in the QuickJS engine.

*) Bugfix: fixed missing fetch event cleanup when the resolver
   failed to start.

*) Bugfix: fixed an out-of-bounds read of a short fetch proxy URL.

*) Bugfix: fixed request body truncation in r.readRequestJSON() for
   bodies containing invalid UTF-8 in the QuickJS engine.

*) Bugfix: fixed an out-of-bounds read while loading a shared
   dictionary state file.

*) Bugfix: set a pending exception when sendHeader(), send(), and
   finish() fail in the njs HTTP handlers.

*) Bugfix: fixed the variable value state after a stream variable
   storage allocation failure.

Core:

*) Improvement: bounded string-producing chained-buffer growth, so
   that exceeding the maximum string length raises a catchable
   RangeError("invalid string length") instead of exhausting worker
   memory.

*) Improvement: aligned built-in exception classes (XML, console,
   TextEncoder, TextDecoder, Buffer, fs.Stats) between the
   njs and QuickJS engines.

*) Bugfix: fixed an infinite loop while inflating a zlib stream
   that requires a dictionary in the QuickJS engine.

*) Bugfix: fixed an infinite loop in Buffer.prototype.fill() with
   a zero-length typed array source.

*) Bugfix: fixed a use-after-free in Array.prototype.sort() when a
   getter invoked for a hole grows the array.

*) Bugfix: fixed type confusion in Buffer.concat() when a list
   element getter returns a typed array during validation but not
   during the copy.

*) Bugfix: fixed an out-of-bounds access in the variable-length
   Buffer readInt/writeInt methods with a zero byteLength.

*) Bugfix: fixed an out-of-bounds read in Buffer.prototype.toString()
   when start was greater than end.

*) Bugfix: fixed Array.prototype.slice() of large arrays returning
   wrong results in the non-fast keys path.

*) Bugfix: fixed the typed array constructor, slice(), toReversed(),
   and toSorted() ignoring the source view byte offset in the
   same-type fast path.

*) Bugfix: fixed Buffer allocation length checks for lengths greater
   than or equal to 2^32 on 32-bit platforms.

*) Bugfix: fixed the Buffer.from() typed-array source offset for
   multi-byte element types in the QuickJS engine.

*) Bugfix: fixed Buffer float access alignment.

*) Bugfix: fixed an out-of-bounds read in a parser string escape
   lookahead.

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.16 2026/05/31 15:24:37 osa Exp $
d3 1
a3 1
DISTNAME=	freenginx-1.31.2
a4 1
PKGREVISION=	2
d116 3
@


1.16
log
@www/freenginx-devel: update third-party cache_purge module to 3.0.2

ChangeLog:	https://github.com/nginx-modules/ngx_cache_purge/compare/2.5.3...3.0.2

Bump PKGREVISION.

Sponsored by:	tipi.work
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.15 2026/05/28 08:58:01 osa Exp $
d5 1
a5 1
PKGREVISION=	1
d118 1
a118 1
	cd ${WRKSRC} && ${PATCH} < ${PATCHDIR}/extra-patch-auto-quickjs
@


1.15
log
@www/freenginx-devel: update from 1.31.1 to 1.31.2

Sponsored by:	tipi.work

<ChangeLog>

*) Bugfix: a segmentation fault might occur in a worker process if
   nested captures were used in the "rewrite" directive.

*) Bugfix: the "if" directive incorrectly handled relative paths when
   checking files.

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.14 2026/05/21 10:37:15 osa Exp $
d5 1
@


1.14
log
@www/freenginx*: update third-party nchan module to 1.3.8

Bump PKGREVISIONs.

ChangeLog:	https://github.com/slact/nchan/compare/v1.3.7...v1.3.8

Sponsored by:	tipi.work
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.13 2026/05/21 10:23:21 osa Exp $
d3 1
a3 1
DISTNAME=	freenginx-1.31.1
a4 1
PKGREVISION=	1
@


1.13
log
@www/freenginx-devel: update from 1.31.0 to 1.31.1

Sponsored by:	tipi.work

<ChangeLog>

*) Feature: the "off" parameter of the "index" directive.
   Thanks to Fabiano Furtado.

*) Bugfix: a segmentation fault might occur in a worker process if the
   "rewrite" directive was used to change request arguments and other
   directives of the ngx_http_rewrite_module were executed afterwards.

*) Bugfix: in the "set" directive.

*) Bugfix: a segmentation fault might occur in a worker process if the
   ngx_http_charset_module was used to convert responses from UTF-8.

*) Bugfix: in the ngx_http_charset_module.

*) Bugfix: a segmentation fault might occur in a worker process if the
   "ssl_ocsp" directive was used.

*) Bugfix: a segmentation fault might occur in a worker process if the
   "scgi_pass" or "uwsgi_pass" directives were used.

*) Bugfix: in the "scgi_request_buffering" directive.

*) Bugfix: in HTTP/3.

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.12 2026/05/21 10:17:06 osa Exp $
d5 1
@


1.12
log
@www/freenginx-devel: update njs 0.9.8 -> 0.9.9

Bump PKGREVISION.

Sponsored by:	tipi.work

<ChangeLog>

nginx modules:

*) Security: a heap buffer overflow might occur in a worker process
   when the "js_fetch_proxy" directive value contains nginx
   variables derived from the client request ($http_*, $arg_*,
   $cookie_*, etc.) and the location's JS handler invokes
   ngx.fetch(). The issue was introduced in dea83189 (0.9.4).

*) Feature: added js_access directive.

*) Feature: added r.readRequestText(), r.readRequestArrayBuffer(),
   and r.readRequestJSON() - async methods that read the request
   body, available in js_access and js_content directives.

*) Feature: added r.readRequestForm() - async method that parses
   the request body submitted from an HTML form
   (application/x-www-form-urlencoded and multipart/form-data) and
   returns a structured accessor object.  The method is available
   in js_access and js_content directives.

*) Feature: added jsVarNames() method.  The method returns the
   names of variables declared with js_var.

Core:

*) Bugfix: fixed evaluation order of call arguments with side
   effects.  Previously, an earlier argument could observe a later
   argument's mutation, e.g. f(a, a = 2) passed 2 as both
   arguments.
   The issue was introduced in fd5e523f (0.9.7).

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.11 2026/05/10 11:59:32 osa Exp $
d3 1
a3 1
DISTNAME=	freenginx-1.31.0
a4 1
PKGREVISION=	2
@


1.11
log
@www/freenginx-devel: update njs 0.9.7 -> 0.9.8

Bump PKGREVISION.

Sponsored by:	tipi.work

<ChangeLog>

nginx modules:

*) Bugfix: fixed loading of the built-in "crypto" module.
   The issue was introduced in 3185ce81 (0.9.7).

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.10 2026/05/10 11:52:41 osa Exp $
d5 1
a5 1
PKGREVISION=	1
@


1.10
log
@www/freenginx-devel: update from 1.30.0 to 1.31.0

Sponsored by:	tipi.work

<ChangeLog>

*) Change: now the "try_files" directive can be used with arguments
   starting with the request URI inside a location given by a regular
   expression, along with the "alias" directive.

*) Bugfix: the "try_files" directive might work incorrectly when used
   with the "alias" directive.

*) Bugfix: a segmentation fault might occur in a worker process if the
   "try_files" and "proxy_pass" directives were used together.

*) Bugfix: the "proxy_pass" directive without a URI part might use the
   original request URI after the URI was changed by the "try_files"
   directive.

*) Change: the logging level of the "invalid ccs message", "not on
   record boundary", "required compression algorithm missing", and some
   "record layer failure" SSL errors has been lowered from "crit" to
   "info".

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.9 2026/04/23 14:05:59 osa Exp $
d5 1
@


1.9
log
@www/freenginx-devel: update njs: 0.9.6 -> 0.9.7

Bump PKGREVISION.

<ChangeLog>

nginx modules:

*) Feature: improved shared dict eviction strategy.

*) Feature: added ttl() method to shared dictionaries.

*) Bugfix: removed spurious "js vm init" notice log emitted during
   configuration parsing.

*) Bugfix: removed shared dict expiration from read-locked paths.

*) Bugfix: fixed double-free in shared dict update with eviction.

*) Bugfix: fixed per-entry TTL reset on shared dict incr() calls.

Core:

*) Feature: added Ed25519 and X25519 support for WebCrypto.

*) Feature: added wrapKey() and unwrapKey() support for WebCrypto.

*) Feature: added crypto.randomUUID().

*) Feature: allowed await expressions in tagged templates and as
   call arguments.

*) Improvement: switched to OpenSSL EVP for hashing in the built-in
   "crypto" module.

*) Bugfix: fixed call argument evaluation.

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.8 2026/04/14 14:47:27 osa Exp $
d3 1
a3 1
DISTNAME=	freenginx-1.30.0
a4 1
PKGREVISION=	1
@


1.8
log
@www/freenginx-devel: update: 1.29.7 -> 1.30.0

Sponsored by:	tipi.work

<ChangeLog>

*) 1.30.x stable branch.

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.7 2026/04/14 14:31:10 osa Exp $
d5 1
@


1.7
log
@www/freenginx-devel: update from 1.29.6 to 1.29.7

Sponsored by:	tipi.work

<ChangeLog>

*) Feature: OpenSSL 4.0 compatibility.

*) Bugfix: a segmentation fault might occur in a worker process if the
   ngx_http_dav_module was used to handle COPY and MOVE methods in a
   location with the "alias" directive.

*) Bugfix: client host name was not escaped in requests to the
   authentication server and in the XCLIENT command if the "resolver"
   directive was used in the SMTP proxy.

*) Bugfix: in the mail proxy module.

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.6 2026/03/10 17:28:13 osa Exp $
d3 1
a3 1
DISTNAME=	freenginx-1.29.7
@


1.6
log
@www/freenginx-devel: update from 1.29.5 to 1.29.6

Sponsored by:	tipi.work

<ChangeLog>

*) Bugfix: incorrect "upstream server temporarily disabled" messages
   might be logged when using variables in the "proxy_pass" directive.

*) Bugfix: retrying a request to the next gRPC upstream server might not
   work correctly.
   Thanks to David Carlier.

*) Bugfix: a segmentation fault might occur in a worker process if the
   ngx_http_xslt_filter_module was used.

*) Bugfix: a segmentation fault might occur in a worker process if the
   ngx_http_mp4_module was used.

*) Bugfix: in the ngx_http_uwsgi_module and ngx_http_scgi_module
   modules.

*) Bugfix: in memory allocation error handling.

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.5 2026/03/04 18:47:08 osa Exp $
d3 1
a3 1
DISTNAME=	freenginx-1.29.6
@


1.5
log
@www/freenginx-devel: update from 1.29.4 to 1.29.5

Also, update third-party modules:
- ngx_http_redis
- njs
- spnego
- vts

to their recent versions.

Sponsored by:	tipi.work

<ChangeLog>

*) Feature: optimized SSL_sendfile() usage on FreeBSD.
   Thanks to Gleb Smirnoff.

*) Bugfix: upstream servers were not marked as failed after a response
   with status code 500, 502, 503, 504, or 429 if the code was listed in
   the "proxy_next_upstream" directive, but switching to the next server
   was not possible.

*) Bugfix: the "stale-if-error" cache control extension was not applied
   if a backend returned a response with status code 500, 502, 503, 504,
   or 429 and the code was listed in the "proxy_next_upstream"
   directive.

*) Bugfix: in handling of premature backend responses.

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.4 2026/01/07 08:49:18 wiz Exp $
d3 1
a3 1
DISTNAME=	freenginx-1.29.5
@


1.4
log
@*: recursive bump for icu 78.1
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.3 2025/12/25 18:58:29 osa Exp $
d3 1
a3 1
DISTNAME=	freenginx-1.29.4
a4 1
PKGREVISION=	1
d116 3
@


1.3
log
@www/freenginx-devel: update CONFLICTS
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.2 2025/12/25 18:01:00 osa Exp $
d5 1
@


1.2
log
@www/freenginx-devel: update from 1.29.3 to 1.29.4

Convert base geoip modules to dynamic.

Sponsored by:	tipi.work

<ChangeLog>

*) Feature: support for GeoIP2 databases in the MaxMind DB (MMDB) format
   in the ngx_http_geoip_module and ngx_stream_geoip_module modules; the
   "geoip_set" directive.

*) Bugfix: disk cache size might be calculated incorrectly on the XFS
   file system with the "largeio" mount option.

*) Bugfix: of minor potential bugs.

</ChangeLog>
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.1 2025/11/21 17:19:48 osa Exp $
d14 1
a14 1
CONFLICTS=	nginx-[0-9]* nginx-devel-[0-9]*
@


1.1
log
@www/freenginx-devel: add new package

Please welcome freenginx, version 1.29.3!
This version of freenginx is the recent one from the development branch.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.162 2025/10/25 01:43:56 osa Exp $
d3 1
a3 1
DISTNAME=	freenginx-1.29.3
@

