Sun Nov 24 15:52:13 2019 UTC ()
nodejs8: updated to 8.16.2

Version 8.16.2 'Carbon' (LTS):

Notable changes
deps: upgrade openssl sources to 1.0.2s

Version 8.16.1 'Carbon' (LTS):

Notable changes
This is a security release.

Node.js, as well as many other implementations of HTTP/2, have been found
vulnerable to Denial of Service attacks.
See https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-002.md
for more information.

Vulnerabilities fixed:

CVE-2019-9511 “Data Dribble”: The attacker requests a large amount of data from a specified resource over multiple streams. They manipulate window size and stream priority to force the server to queue the data in 1-byte chunks. Depending on how efficiently this data is queued, this can consume excess CPU, memory, or both, potentially leading to a denial of service.
CVE-2019-9512 “Ping Flood”: The attacker sends continual pings to an HTTP/2 peer, causing the peer to build an internal queue of responses. Depending on how efficiently this data is queued, this can consume excess CPU, memory, or both, potentially leading to a denial of service.
CVE-2019-9513 “Resource Loop”: The attacker creates multiple request streams and continually shuffles the priority of the streams in a way that causes substantial churn to the priority tree. This can consume excess CPU, potentially leading to a denial of service.
CVE-2019-9514 “Reset Flood”: The attacker opens a number of streams and sends an invalid request over each stream that should solicit a stream of RST_STREAM frames from the peer. Depending on how the peer queues the RST_STREAM frames, this can consume excess memory, CPU, or both, potentially leading to a denial of service.
CVE-2019-9515 “Settings Flood”: The attacker sends a stream of SETTINGS frames to the peer. Since the RFC requires that the peer reply with one acknowledgement per SETTINGS frame, an empty SETTINGS frame is almost equivalent in behavior to a ping. Depending on how efficiently this data is queued, this can consume excess CPU, memory, or both, potentially leading to a denial of service.
CVE-2019-9516 “0-Length Headers Leak”: The attacker sends a stream of headers with a 0-length header name and 0-length header value, optionally Huffman encoded into 1-byte or greater headers. Some implementations allocate memory for these headers and keep the allocation alive until the session dies. This can consume excess memory, potentially leading to a denial of service.
CVE-2019-9517 “Internal Data Buffering”: The attacker opens the HTTP/2 window so the peer can send without constraint; however, they leave the TCP window closed so the peer cannot actually write (many of) the bytes on the wire. The attacker then sends a stream of requests for a large response object. Depending on how the servers queue the responses, this can consume excess memory, CPU, or both, potentially leading to a denial of service.
CVE-2019-9518 “Empty Frames Flood”: The attacker sends a stream of frames with an empty payload and without the end-of-stream flag. These frames can be DATA, HEADERS, CONTINUATION and/or PUSH_PROMISE. The peer spends time processing each frame disproportionate to attack bandwidth. This can consume excess CPU, potentially leading to a denial of service.

Version 8.16.0 'Carbon' (LTS):

Notable Changes
n-api:
add API for asynchronous functions
mark thread-safe function as stable


(adam)
diff -r1.20 -r1.21 pkgsrc/lang/nodejs8/Makefile
diff -r1.17 -r1.18 pkgsrc/lang/nodejs8/distinfo
diff -r1.1 -r1.2 pkgsrc/lang/nodejs8/patches/patch-deps_uv_common.gypi

cvs diff -r1.20 -r1.21 pkgsrc/lang/nodejs8/Attic/Makefile (expand / switch to unified diff)

--- pkgsrc/lang/nodejs8/Attic/Makefile 2019/04/03 00:32:50 1.20
+++ pkgsrc/lang/nodejs8/Attic/Makefile 2019/11/24 15:52:13 1.21
@@ -1,15 +1,14 @@ @@ -1,15 +1,14 @@
1# $NetBSD: Makefile,v 1.20 2019/04/03 00:32:50 ryoon Exp $ 1# $NetBSD: Makefile,v 1.21 2019/11/24 15:52:13 adam Exp $
2 2
3DISTNAME= node-v8.12.0 3DISTNAME= node-v8.16.2
4 4
5# Stated by the changelog as of 8.2.0 5# Stated by the changelog as of 8.2.0
6GCC_REQD+= 4.9.4 6GCC_REQD+= 4.9.4
7 7
8PKGREVISION= 3 
9.include "options.mk" 8.include "options.mk"
10 9
11CONFIGURE_ARGS+= --with-intl=system-icu 10CONFIGURE_ARGS+= --with-intl=system-icu
12 11
13.include "../../lang/nodejs/Makefile.common" 12.include "../../lang/nodejs/Makefile.common"
14.include "../../textproc/icu/buildlink3.mk" 13.include "../../textproc/icu/buildlink3.mk"
15.include "../../mk/bsd.pkg.mk" 14.include "../../mk/bsd.pkg.mk"

cvs diff -r1.17 -r1.18 pkgsrc/lang/nodejs8/Attic/distinfo (expand / switch to unified diff)

--- pkgsrc/lang/nodejs8/Attic/distinfo 2018/12/15 17:27:21 1.17
+++ pkgsrc/lang/nodejs8/Attic/distinfo 2019/11/24 15:52:13 1.18
@@ -1,22 +1,22 @@ @@ -1,22 +1,22 @@
1$NetBSD: distinfo,v 1.17 2018/12/15 17:27:21 maya Exp $ 1$NetBSD: distinfo,v 1.18 2019/11/24 15:52:13 adam Exp $
2 2
3SHA1 (node-v8.12.0.tar.gz) = c83add7809c7f36c2afb81d96cde25f1534bbe27 3SHA1 (node-v8.16.2.tar.gz) = 8ea0035395fab52d9b90fe415258163cf1142c74
4RMD160 (node-v8.12.0.tar.gz) = 576590ec1bc9801a1e4fd42b95b289182f1cd1b5 4RMD160 (node-v8.16.2.tar.gz) = 6cf3466beab47671c53665b4c50f9fad5006054d
5SHA512 (node-v8.12.0.tar.gz) = 69cfaf56204c9605254382ae613d36b32eb5966dfd5b0db2aee11a50f3119b38221f425df7c273efb43e453cda77d6c4681bad6f3e5c34a2a2710c5af81e937a 5SHA512 (node-v8.16.2.tar.gz) = 342299910564bfa7e4d54cd6544fb3d36410a974810b636336a71115060087d05a819241cef930c056e22f8fef0b0f4d0deb185ae803101ca270351543e5f64e
6Size (node-v8.12.0.tar.gz) = 30393516 bytes 6Size (node-v8.16.2.tar.gz) = 30683001 bytes
7SHA1 (patch-common.gypi) = c7fee438a564003fb3624679ce94108ab397fec0 7SHA1 (patch-common.gypi) = c7fee438a564003fb3624679ce94108ab397fec0
8SHA1 (patch-deps_cares_cares.gyp) = 22b44f2ac59963f694dfe4f4585e08960b3dec32 8SHA1 (patch-deps_cares_cares.gyp) = 22b44f2ac59963f694dfe4f4585e08960b3dec32
9SHA1 (patch-deps_uv_common.gypi) = ba9caa1f6d9d6df1913d0d72a8d18ea6db0a32ff 9SHA1 (patch-deps_uv_common.gypi) = 6a94a89866b272dcab60a01fd571057acd0ccd3b
10SHA1 (patch-deps_uv_src_unix_netbsd.c) = e1b5a3c611dbd08d0918d69dcf3331630158a1bc 10SHA1 (patch-deps_uv_src_unix_netbsd.c) = e1b5a3c611dbd08d0918d69dcf3331630158a1bc
11SHA1 (patch-deps_v8_src_arm_cpu-arm.cc) = d0d11ac474ab109a6f40b26fa457b12d742eb48d 11SHA1 (patch-deps_v8_src_arm_cpu-arm.cc) = d0d11ac474ab109a6f40b26fa457b12d742eb48d
12SHA1 (patch-deps_v8_src_base_atomicops.h) = 552d2b7781b39b93392fd00043b1cf4cb10802da 12SHA1 (patch-deps_v8_src_base_atomicops.h) = 552d2b7781b39b93392fd00043b1cf4cb10802da
13SHA1 (patch-deps_v8_src_base_platform_platform-freebsd.cc) = 686c2054838a25cfeed7fb9870a959e48dc4de35 13SHA1 (patch-deps_v8_src_base_platform_platform-freebsd.cc) = 686c2054838a25cfeed7fb9870a959e48dc4de35
14SHA1 (patch-deps_v8_src_base_platform_platform-openbsd.cc) = 5e593879dbab095f99e82593272a0de91043f9a8 14SHA1 (patch-deps_v8_src_base_platform_platform-openbsd.cc) = 5e593879dbab095f99e82593272a0de91043f9a8
15SHA1 (patch-deps_v8_src_base_platform_platform-posix.cc) = 368620c2a20538c1e5ff194e72d62f173a7f0c91 15SHA1 (patch-deps_v8_src_base_platform_platform-posix.cc) = 368620c2a20538c1e5ff194e72d62f173a7f0c91
16SHA1 (patch-deps_v8_src_base_platform_semaphore.cc) = aa84bf1dbaac5808529f6b01502d117c88751649 16SHA1 (patch-deps_v8_src_base_platform_semaphore.cc) = aa84bf1dbaac5808529f6b01502d117c88751649
17SHA1 (patch-deps_v8_src_compiler_types.h) = 711cc94535200374104c3cd1f0fbbd00994701a6 17SHA1 (patch-deps_v8_src_compiler_types.h) = 711cc94535200374104c3cd1f0fbbd00994701a6
18SHA1 (patch-deps_v8_src_globals.h) = ec9798befbfbcd432b0c61bc914fe9d6a4bf4a86 18SHA1 (patch-deps_v8_src_globals.h) = ec9798befbfbcd432b0c61bc914fe9d6a4bf4a86
19SHA1 (patch-deps_v8_src_log-utils.h) = 32bbf2de2af7a8ab6900a4d5e968dcc1357f6de2 19SHA1 (patch-deps_v8_src_log-utils.h) = 32bbf2de2af7a8ab6900a4d5e968dcc1357f6de2
20SHA1 (patch-deps_v8_tools_run-llprof.sh) = 39aa3faf77492ef8dd35b411b7b0e4605b469af3 20SHA1 (patch-deps_v8_tools_run-llprof.sh) = 39aa3faf77492ef8dd35b411b7b0e4605b469af3
21SHA1 (patch-src_cares__wrap.cc) = a26a162f130468cbc0650a33b27b71377d273704 21SHA1 (patch-src_cares__wrap.cc) = a26a162f130468cbc0650a33b27b71377d273704
22SHA1 (patch-src_inspector__agent.cc) = 6066c01b671a1d416440b073a7a21fdf22eef926 22SHA1 (patch-src_inspector__agent.cc) = 6066c01b671a1d416440b073a7a21fdf22eef926

cvs diff -r1.1 -r1.2 pkgsrc/lang/nodejs8/patches/Attic/patch-deps_uv_common.gypi (expand / switch to unified diff)

--- pkgsrc/lang/nodejs8/patches/Attic/patch-deps_uv_common.gypi 2017/11/01 12:07:31 1.1
+++ pkgsrc/lang/nodejs8/patches/Attic/patch-deps_uv_common.gypi 2019/11/24 15:52:13 1.2
@@ -1,15 +1,15 @@ @@ -1,15 +1,15 @@
1$NetBSD: patch-deps_uv_common.gypi,v 1.1 2017/11/01 12:07:31 fhajny Exp $ 1$NetBSD: patch-deps_uv_common.gypi,v 1.2 2019/11/24 15:52:13 adam Exp $
2 2
3Add support for NetBSD. 3Add support for NetBSD.
4 4
5--- deps/uv/common.gypi.orig 2015-03-31 22:13:01.000000000 +0000 5--- deps/uv/common.gypi.orig 2019-10-09 13:05:58.000000000 +0000
6+++ deps/uv/common.gypi 6+++ deps/uv/common.gypi
7@@ -128,7 +128,7 @@ 7@@ -134,7 +134,7 @@
8 }] 8 }]
9 ] 9 ]
10 }], 10 }],
11- ['OS in "freebsd dragonflybsd linux openbsd solaris android"', { 11- ['OS in "freebsd dragonflybsd linux openbsd solaris android aix"', {
12+ ['OS in "freebsd dragonflybsd linux openbsd solaris android netbsd"', { 12+ ['OS in "freebsd dragonflybsd linux openbsd solaris android aix netbsd"', {
13 'cflags': [ '-Wall' ], 13 'cflags': [ '-Wall' ],
14 'cflags_cc': [ '-fno-rtti', '-fno-exceptions' ], 14 'cflags_cc': [ '-fno-rtti', '-fno-exceptions' ],
15 'target_conditions': [ 15 'target_conditions': [