Njs is an nginx module that extends the server's functionality through
JavaScript scripting, enabling the creation of custom server-side logic.
Use cases:
- Complex access control and security checks in njs before a request
reaches an upstream server
- Manipulating response headers
- Writing flexible asynchronous content handlers and filters
This port only installs the module sources. The module itself is built
by the nginx ports when their NJS option is enabled.
www/nginx-module-njs: Update to 1.0.2
Fixes memory corruption in RegExp operations, crashes after a failed
module compilation, and excessive resource usage when sorting huge sparse
arrays.
Both local patches are gone: njs 1.0.2 carries the indexed fast path fix
for exotic objects itself.
Sponsored by: Netzkommune GmbH
www/nginx-module-njs: Fix indexed fast paths for exotic objects
Object.values() and Object.entries() erased the concrete type of an
exotic receiver, so typed arrays could be treated as njs_array_t and
cause invalid memory reads and writes. Taken from upstream commit
bb6f23cc, which is not in a release yet.
Sponsored by: Netzkommune GmbH
www/nginx-module-njs: Update to 1.0.1
This release contains security fixes: an access control bypass in
js_access when an asynchronous request body continuation threw an
exception, a worker process crash when reading Response.statusText, a
heap buffer overflow in XML exclusive canonicalization and a stack
buffer overflow when exporting large RSA keys to JWK in WebCrypto.
Upstream has not assigned CVE numbers.
Changes: https://nginx.org/en/docs/njs/changes.html
Sponsored by: Netzkommune GmbH
www/nginx-module-njs: Add New Port
Njs is an nginx module that extends the server's functionality through
JavaScript scripting. This port installs the module sources only, the
module itself is built by the nginx ports.
Differential Revision: https://reviews.freebsd.org/D59121
Sponsored by: Netzkommune GmbH