summaryrefslogtreecommitdiff
path: root/www/nghttp2
AgeCommit message (Collapse)AuthorFilesLines
2022-12-02nghttp2: Add libxml2 to buildlink dependencies.jperkin1-1/+3
2022-11-23massive revision bump after textproc/icu updateadam1-1/+2
2022-11-14nghttp2 nghttp2-tools: updated to 1.51.0adam2-6/+6
nghttp2 v1.51.0 lib: add casts to silence implicit conversion warnings (GH-1822) doc: Update Ubuntu packages based on Ubuntu 22.04 (GH-1812) doc: Update android build documentation (GH-1806) build: Bump NDK and others to the latest (GH-1804) build: Bump OpenSSL versions (GH-1828) build: Bump libbpf to v1.0.1 (GH-1830) build: Bump ngtcp2 (GH-1819, GH-1831) build: Disable python bindings by default because it has been deprecated (GH-1811, GH-1826, GH-1829) build: Dockerfile android improvements (GH-1805) build: Update dependency versions for Dockerfile.android (GH-1802) third-party: Bump llhttp (GH-1827) src: Fix test failure on Linux if tz database is not available (GH-1813) nghttpx: Fix affinity-cookie-stickiness parameter handling (GH-1818) integration: Add http3 integration test (GH-1832)
2022-09-26nghttp2: updated to 1.50.0adam2-6/+6
v1.50.0 lib This release adds nghttp2_option_set_no_rfc9113_leading_and_trailing_ws_validation which disables checking leading and trailing white spaces against HTTP field value. nghttpx nghttpx now respects backend-address-family option when dynamically resolving backend host with dns parameter in backend option.
2022-08-22nghttp2: updated to 1.49.0adam2-6/+6
Nghttp2 v1.49.0 lib This release adds nghttp2_check_header_value_rfc9113 which complains leading and trailing white spaces. The library now uses this function instead of nghttp2_check_header_value when checking HTTP header fields. asio libnghttp2_asio has been moved to its own repository and got new maintainer. libnghttp2_asio related code in nghttp2 repository will not get any updates and be removed at the end of 2022. python Python bindings have been deprecated, and will not get any updates and be removed at the end of 2022 due to the maintenance issues. nghttpx Randomizing backend server selection has been added again. The broken PROXY-protocol when TLS is used has been fixed. nghttpx now removes trailing white spaces from HTTP header fields to align with RFC 9113.
2022-07-08nghttp2: does not support python 2.xwiz1-1/+3
2022-07-01nghttp2: updated to 1.48.0adam3-8/+7
v1.48.0 lib This release adds RFC9218 Extensible Prioritization Scheme for HTTP. It is enabled by submitting NGHTTP2_SETTINGS_NO_RFC7540_PRIORITIES via nghttp2_submit_settings(). See Stream priorities section of Programmers’ Guide. It fixes the stream stall bug when the initial window size is decreased. build Now applications can be built with Libressl 3.5. If --enable-lib-only configure option is used, no application libraries are checked. src The default TLS cipher suites are updated. ktls support has been added to nghttp, nghttpd, nghttpx, and h2load if they are built with OpenSSL >= 3.0.0. nghttpd This release fixes the bug that stalls TLS read operation. nghttpx nghttpx by default disables RFC 7540 tree based HTTP/2 priorities and uses RFC 9218 priorities instead. It has a fallback mechanism to RFC 7540 if client does not send SETTINGS_NO_RFC7540_PRIORITIES. affinity-cookie-stickiness backend parameter has been added. The session affinity feature which had been broken for quite some time has been fixed.
2022-06-30*: Revbump packages that use Python at runtime without a PKGNAME prefixnia1-2/+2
2022-04-18revbump for textproc/icu updateadam1-1/+2
2022-03-01nghttp2: updated to 1.47.0adam3-8/+7
Nghttp2 v1.47.0 lib This release fixes the incorrect HPACK decoder table size update, which lead to incorrectly require Dynamic Table Size Update from an encoder when it is not needed. build cmake build now disables libbpf by default. h2load Now maximum allowed maximum frame size is configurable with --max-frame-size. nghttpx --require-http-scheme option is added. It requires http or https scheme in HTTP request. It also requires that https scheme must be used for an encrypted connection. Otherwise, http scheme must be used. This option is recommended for a server deployment which directly faces clients and the services it provides only require http or https scheme. BBR2 congestion control algorithm is added to QUIC connection. libbpf is now bumped to v0.7.0 and turn on all strict features. The qlog file extension is changed to .sqlog. The bug that causes h3 stream ends prematurely has been fixed. The issue that a forwarded h3 GET request to HTTP/1.1 hop always has chunked transfer-encoding: chunked has been fixed. QUIC connection now sends and receives ECN bits. HTTP/3 trailer fields support has been added.
2021-12-08revbump for icu and libffiadam1-1/+2
2021-11-15nghttp2: use BLAKE2swiz1-2/+2
2021-10-26nghttp2: updated to 1.46.0adam3-12/+12
Nghttp2 v1.46.0 build A workaround is added to avoid the broken version check in AX_PYTHON_DEVEL macro. It adds the missing cmake files to EXTRA_DIST. nghttpx HTTP/3 feature is now available with BoringSSL. SCT data is now available with BoringSSL. New QUIC and HTTP/3 related options were added: --frontend-quic-initial-rtt, --quic-server-id, and --rlimit-memlock. --frontend-quic-connection-id-encryption-key has been removed, and the new option --frontend-quic-secret-file has been added which specifies initial keying materials to generate QUIC secrets and keys for connection ID and tokens. It also supports the rotation of keying materials. HTTP/3 ALPN h3-29 is now supported. --worker-process-grace-shutdown-period option was added to set the maximum grace period to wait for a worker process to terminate gracefully. --max-worker-processes option was added to limit the number of the lingering worker processes. h2load HTTP/3 feature is now available with BoringSSL.
2021-10-07www: Remove SHA1 hashes for distfilesnia1-2/+1
2021-09-29revbump for boost-libsadam1-2/+2
2021-09-29nghttp2: updated to 1.45.1adam3-31/+31
Nghttp2 v1.45.1 build This release fixes packaging issues which lack some configuration files in tar archives. Nghttp2 v1.45.0 lib Stricter checks for :method: and :path pseudo header fields are introduced. build nghttp2 applications can be compiled with OpenSSL v3.0.0. Fix warning about systemd when cmake is used. Added build options to enable HTTP/3 and eBPF. nghttpx The experimental HTTP/3 support has been added. “dnf” (= “do not forward”) parameter is added to backend option. h2load The experimental HTTP/3 support has been added. SSLKEYLOGFILE environment variable support has been added.
2021-07-19nghttp2: updated to 1.44.0adam3-9/+8
1.44.0: nghttpx The bug which prevents a backend which is excluded from a load balancing group temporarily from being restored. The word master is replaced main. The nghttpx master process is now called main process. --no-http2-cipher-black-list and --client-no-http2-cipher-black-list are deprecated and replaced with --no-http2-cipher-block-list and --client-no-http2-cipher-block-list respectively. Remove trailing white space after $method log variable. h2load --rps option has been added. The time unit (e.g., ms) is now allowed in -D option.
2021-04-21revbump for boost-libsadam2-4/+4
2021-04-21revbump for textproc/icuadam1-1/+2
2021-03-31nghttp2: accept lower python3.maya3-1/+70
Upstream has only intended to reject python 2.x.
2021-02-03nghttp2: updated to 1.43.0adam3-9/+8
v1.43.0: doc Documentations are now built with Sphinx 3.3.0 or later. python The python binding now requires Python 3. All python scripts for nghttp2 development are translated to Python 3 compatible. nghttpx This release fixes a potential memory issue that a memory pool gets cleared while it is still in use. ECDSA certificate is now chosen when compatible signature algorithm is available. This release adds a workaround to include ‘:’ in backend pattern.
2020-12-04Revbump packages with a runtime Python dep but no version prefix.nia1-1/+2
For the Python 3.8 default switch.
2020-11-26nghttp2 nghttp2-tools: updated to 1.42.0adam3-9/+8
Nghttp2 v1.42.0 This release includes security advisory. lib The UBSAN errors are now fixed. nghttp2_map is now backed by tree for storing collisions. doc Some clarifications are made for nghttp2_session_send function. build The missing cmake/FindSystemd.cmake has been added to the tar distribution.
2020-11-05*: Recursive revbump from textproc/icu-68.1ryoon1-1/+2
2020-06-02nghttp2: updated to 1.14.0adam3-10/+8
Nghttp2 v1.41.0 Security Advisory CVE-2020-11080: Denial of service: Overly large SETTINGS frames For more information, read the security advisory. lib This release implements nghttp2_option_set_max_settings API which sets the maximum number of SETTINGS entries in one SETTINGS frame to mitigate the security issue. It also moves SETTINGS flood check earlier to make it more effective. The bug which stalls receiving stream data is fixed. Previously, if automatic window update is enabled (which is default), after window size is set to 0 by nghttp2_session_set_local_window_size, once the receiving window is exhausted, even after window size is increased by nghttp2_session_set_local_window_size, no more data cannot be received. This is because nghttp2_session_set_local_window_size does not submit WINDOW_UPDATE. It is only triggered when new data arrives but since window is filled up, no more data cannot be received, thus dead lock happens. build With cmake build, the hard-coded static lib suffix is now optional. nghttpx proxyprotocol v2 has been implemented. The bug in getting certificate serial number with mruby script has been fixed. h2load New option, --connect-to, is added.
2020-06-02Revbump for icuadam1-2/+2
2020-05-06revbump after boost updateadam2-4/+4
2020-03-30nghttp2: add Makefile.commonadam1-0/+16
2020-03-30Added www/nghttp2-tools (to avoid circular dependency)adam4-44/+11
2020-01-18*: Recursive revision bump for openssl 1.1.1.jperkin2-4/+4
2020-01-12*: Recursive revbump from devel/boost-libsryoon2-3/+4
2019-11-20nghttp2: updated to 1.40.0adam3-14/+8
nghttp2 v1.40.0 lib: Add nghttp2_check_authority as public API (GH-1413) lib: Fix the bug that stream is closed with wrong error code (GH-1408) lib: Faster huffman encoding and decoding (GH-1405) build: Avoid filename collision of static and dynamic lib (Patch from William A Rowe Jr) (GH-1394) build: Add new flag ENABLE_STATIC_CRT for Windows (Patch from William A Rowe Jr) (GH-1393) build: cmake: Support building nghttpx with systemd (Patch from Andrew Penkrat) (GH-1377) third-party: Update neverbleed to fix memory leak nghttpx: Fix bug that mruby is incorrectly shared between backends (GH-1392) nghttpx: Reconnect h1 backend if it lost connection before sending headers nghttpx: Returns 408 if backend timed out before sending headers nghttpx: Fix request stall (GH-1378)
2019-08-22Recursive revbump from boost-1.71.0ryoon2-3/+4
2019-08-14nghttp2: updated to 1.39.2adam2-8/+7
nghttp2 v1.39.2 This release fixes CVE-2019-9511 “Data Dribble” and CVE-2019-9513 “Resource Loop” vulnerability in nghttpx and nghttpd. Specially crafted HTTP/2 frames cause Denial of Service by consuming CPU time. Check out https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-002.md for details. For nghttpx, additionally limiting inbound traffic by --read-rate and --read-burst options is quite effective against this kind of attack. Fix CVE-2019-9511 and CVE-2019-9513 Add nghttp2_option_set_max_outbound_ack API function nghttpx: Fix request stall
2019-07-01Recursive revbump from boost-1.70.0ryoon2-3/+4
2019-06-13nghttp2: updated to 1.39.1adam2-8/+7
v1.39.1: nghttpx This release fixes the bug that log-level is not set with cmd-line or configuration file. It also fixes FPE with default backend. v1.39.0: lib libnghttp2 now ignores content-length in 200 response to CONNECT request as per RFC 7230. third-party mruby has been upgraded to 2.0.1. asio libnghttp2-asio now supports boost-1.70. src http-parser has been replaced with llhttp. nghttpx nghttpx now ignores Content-Length and Transfer-Encoding in 1xx or 200 to CONNECT. This release fixes the bug that the log level does not change to the default value on configuration reload if log-level option is missing in new configuration.
2019-04-25PKGREVISION bump for anything using python without a PYPKGPREFIX.maya1-1/+2
This is a semi-manual PKGREVISION bump.
2019-04-18nghttp2: updated to 1.38.0adam2-7/+7
lib This release fixes the bug that on_header callback is still called after stream is closed. third-party http-parser is upgraded to v2.9.1. nghttpx This release fixes the bug that authority and path altered by per-pattern mruby script can affect backend selection on retry. It also fixes the bug that HTTP/1.1 chunked request stalls. Now nghttpx does not log authorization request header field value with -LINFO. Now nghttpx can be built with modern LibreSSL.
2019-03-13nghttp2: updated to 1.37.0adam2-7/+7
v1.37.0: build CMake build explicitly sets install location when building shared library. nghttpx This release fixes possible backend stall when header and request body are sent in their own packets. The backend option gets weight parameter to influence backend selection. This release fixes compile error with BoringSSL.
2019-01-19nghttp2: updated to 1.36.0adam2-8/+7
nghttp2 v1.36.0. build CMake build disables shared library if ENABLE_SHARED_LIB is OFF. third-party http-parser has been upgraded to v2.9.0. mruby has been upgraded to v2.0.0. nghttpx nghttpx now pools h1 backend connection per address and uses it when the round robin index points to the address. nghttpx now randomizes backend address round robin order per thread. The bug that long certificate serial numbers cannot be handled has been fixed. h2load An option to write per-request logs has been added. asio The API to get the current server port has been added.
2019-01-14nghttp2: Rototill USE_LANGUAGES and make granular per optiongdt2-9/+15
Back out the previous build fix. The base package does not even need C++, so drop from USE_LANGUAGES, and remove GCC_REQD. Builds on netbsd-7/amd64 with gcc 4.8. Both options build C++ code. Add c++14 to USE_LANGUAGES and 6 to GCC_REQD, following upstream documentation.
2019-01-04nghttp2: Add GCC_REQ for c++14gdt1-1/+3
While the package without options does not actually use C++14, configure looks for it, and fails to find the C++ version of the C preprocessor, at least on betbsd-7 with gcc 4.8.5. (Perhaps the cpp searching could be fixed, and the USE_LANGUAGES pushed into options that need it, but that seems more complicated than is useful, given that one more or less needs to have a C++14 cpmpiler anyway.)
2018-12-13revbump for boost 1.69.0adam2-3/+4
2018-12-09nghttp2: updated to 1.35.1adam2-7/+7
Nghttp2 v1.35.1 nghttpx This release fixes the broken trailing slash handling when routing a request. nghttpx allows a pattern which ends “/” to match the request path which just lacks the trailing “/”. Previously, this special handling did not work if certain patterns were registered.
2018-11-23nghttp2: updated to 1.35.0adam2-10/+9
Nghttp2 v1.35.0 lib Use __has_declspec_attribute in order to check that dllexport/dllimport can be used. build libevent detection with cmake has been improved. src C++14 language features are now required. nghttpx mruby send_info non-final response is now written early. Fix assertion failure on mruby send_info with HTTP/1.1 frontend. h2load HTTP/1.1 non-final response is now handled correctly. Clarify that time for connect includes TLS handshake.
2018-10-04nghttp2: updated to 1.34.0adam2-7/+7
Nghttp2 v1.34.0 lib libnghttp2 now supports extended CONNECT method and :protocol pseudo header field defined in RFC 8441. To enable this functionality on server side, send NGHTTP2_SETTINGS_ENABLE_CONNECT_PROTOCOL using nghttp2_submit_settings(). nghttpx nghttpx now supports “Bootstrapping WebSockets with HTTP/2” defined in RFC 8441 for both frontend and backend HTTP/2 connections. read-timeout and write-timeout parameters have been added to --backend option to specify read/write timeouts per pattern which override values set by --backend-read-timeout and --backend-write-timeout options. This release fixes stability issues in neverbleed with OpenSSL 1.1.1. mruby has been updated to version 1.4.1. env.tls_handshake_finished has been added to mruby scripting to know whether TLS handshake has been completed or not. This might be useful to decide that 0-RTT data should be processed or not. --tls13-ciphers and --tls-client-ciphers options have been added to configure TLSv1.3 ciphers. nghttpx now adds Early-Data header field to the request header field when request is included in 0-RTT packet, and TLS handshake has not been completed yet. Early-Data header field is defined in RFC 8470. nghttpx now supports TLSv1.3 0-RTT data. By default, it accepts 0-RTT data, but postpones the request until TLS handshake completes. The new option --tls-no-postpone-early-data makes nghttpx not to postpone request and adds Early-Data header field to backend request. It is important to make sure that all backends must recognize Early-Data header field to mitigate reply attack. To enable 0-RTT data and most of the TLSv1.3 features, OpenSSL 1.1.1 is required.
2018-09-03www/nghttp2: Update to 1.33.0.fhajny2-7/+7
- lib: Tweak nghttp2_session_set_stream_user_data - lib: Fix handling of SETTINGS_MAX_CONCURRENT_STREAMS. - lib: Implement ORIGIN frame - asio: support definition of local endpoint for cleartext client session - integration: Remove remaining SPDY code from the integration tests. - nghttpx: Fix worker process crash with neverbleed write error - nghttpx: Support per-backend mruby script - nghttpx: Fix stream reset if data from client is arrived before dconn is attached
2018-08-28nghttp2: updated to 1.32.1adam2-8/+7
Nghttp2 v1.32.1: nghttp2_session_set_stream_user_data now works for a stream which is not created yet, but the request which creates the stream is queued.
2018-08-16revbump after boost-libs updateadam2-3/+4
2018-06-14www/nghttp2: Update to 1.32.0.fhajny2-8/+7
- lib: Ignore all input after calling session_terminate_session - lib: Fix treatment of padding - lib: Don't allow 101 HTTP status code because HTTP/2 removes HTTP Upgrade - build: add ENABLE_STATIC_LIB option to build static lib - third-party: Upgrade neverbleed to the latest master - asio: Support client side SNI - src: Compile with libressl 2.7.2 - src: Allow building without NPN - h2load: -r and --duration are mutually exclusive