./net/ngtcp2, Implements RFC9000 QUIC protocol

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.11.0, Package name: ngtcp2-1.11.0, Maintainer: pkgsrc-users

ngtcp2 project is an effort to implement RFC9000 QUIC protocol.


Master sites:

Filesize: 637.602 KB

Version history: (Expand)


CVS history: (Expand)


   2025-02-21 17:23:11 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
ngtcp2: updated to 1.11.0

1.11.0

Generate periodic fuzzing coverage reports
Remove len parameter from ngtcp2_pkt_hd_init
Remove ineffective use of NGTCP2_PKT_FLAG_NONE
Revert "Do not extend app-limited period"
Cosmetic cleanup
C99 designated initializers
ngtcp2_gaptr: Assert !ngtcp2_ksl_it_end
fuzz: Exercise memory allocation failures
fuzz: Exercise callback failures
tests: Fix uninitialized variable reference
Fix uninitialized connection close frame_type
Bump munit
Update doc
clang-format
C++ designated initializers
fuzz: Decode transport parameters from raw fuzzed data
fuzz: Send stream data
ngtcp2_ringbuf_full: Add const qualifier to rb
fuzz: Don't free data encoded in STREAM frame
fuzz: Add missing callbacks
Extract code around Destination Connection ID to ngtcp2_dcidtr
fuzz: Exercise ngtcp2_conn_handle_expiry()
Deal with very large ack_delay
fuzz: Exercise ngtcp2_conn_initiate_migration()
fuzz: Exercise extending max offsets
Avoid limiting CWND during path validation
fuzz: Set negotiated version before setting remote transport params
Add ngtcp2_pv_set_fallback
Fix ngtcp2_conn_get_active_dcid for zero-length DCID
Remove redundant ngtcp2_dcid_set_path call
Add const qualifier as we did in conn_get_loss_time_and_pktns
Rename NGTCP2_PV_FLAG_FALLBACK_ON_FAILURE to NGTCP2_PV_FLAG_FALLBACK_PRESENT
examples: nullptr
Rename persistent_congestion_started_ts to handshake_confirmed_ts
picotls: Reset AEAD IV on decryption failure
crypto/picotls: clang-format
Allocate ACK frame buffer on stack
Move fields required to make ACK to ngtcp2_acktr
Avoid buffering padding bytes
Revert "Avoid buffering padding bytes"
The minimum valid QUIC packet length is 21
Avoid buffering padding bytes, take 2
Amend 1502
BBR update
Update BBR
Adjust pacing timer
Pacing adjustment followup
Pay compensation as much as possible
ngtcp2_rst: Ignore packets that are sent before reset
interop: Enable connectionmigration
Fix server side preferred address migration
Check remote disable_active_migration
Ignore packet from handshake local addr after preferred address migration
ngtcp2_conn_read_pkt accepts NULL ngtcp2_pkt_info
tests: Refactor ngtcp2_conn setup functions
Refactor test_ngtcp2_conn_send_initial_token
ngtcp2_acktr: Add tests
Fix wrong condition for DATA_BLOCKED frame transmission
Remove ngtcp2_vec_new and ngtcp2_vec_del
Add tests
Remove redundant DATA_BLOCKED and STREAM_DATA_BLOCKED frames
Add test to verify cancelling retransmission
Add test_ngtcp2_conn_submit_new_token
Remove unused funcs
ngtcp2_ksl: Remove ineffective ksl_node_set_key
Add ngtcp2_addr_test
Revert "ngtcp2_ksl: Remove ineffective ksl_node_set_key"
Use ngtcp2_addr_empty
ngtcp2_ksl: Add a test to cover edge case
ngtcp2_transport_params_decode: Add test case for empty input
Require application to provide sane ngtcp2_sockaddr
tests: Make remote transport parameters configurable
Rename ngtcp2_addr_compare to ngtcp2_addr_cmp
bbr: Use SRTT after the first RTT sample becomes available
tests: Refactor tests to use conn_options
Revise version negotiation tests in less intrusive way
Add tests
Add test to check that packet with reserved version is discarded
Fix cast
examples/server: Rework connection handling
Fix assertion error due to overlapping 0 length frames
fuzz: Deal with NGTCP2_WRITE_STREAM_FLAG_MORE
Doc: fix reference to ngtcp2_conn_get_0rtt_crypto_ctx
Bump boringssl
Bump wolfSSL to v5.7.6-stable
Bump aws-lc to v1.46.1
Bump picotls
Fix uninitialized ngtcp2_dcid.flags
   2024-12-24 16:34:07 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
ngtcp2: updated to 1.10.0

ngtcp2 v1.10.0

Update doc
Rename NGTCP2_INITIAL_TABLE_LENBITS to NGTCP2_INITIAL_HASHBITS
example/client: Enable GSO
examples: Enable X25519MLKEM768 for boringssl
Update security policy
Exercise qlog code in fuzzing
Do not extend app-limited period
Fuzz sequences of different received packets
Fuzz timestamp in read_write_pkt fuzzer
Exercise all CC algorithms in read_write_pkt fuzzer
Exercise client in read_write_pkt fuzzer
clang-format
examples: Remove unnecessary http-parser include
examples: Cleanup build files around http-parser
Fix assertion error when retransmitting 0 length STREAM frames
Fuzz remote transport params in read_write_pkt fuzzer
Update ksl fuzzer with FuzzedDataProvider
Remove outdated PMTUD probe packet handling when it is lost
Add ngtcp2_rob fuzzer
Require recent version of aws-lc due to X25519MLKEM768 in examples
Fix rob fuzzer
Bump boringssl
Bump picotls
Bump aws-lc

ngtcp2 v1.9.1

Fixes CVE-2024-52811

ngtcp2 v1.9.0

Fix connection stall due to cwnd limited
GHA: Bump Ubuntu runner to 24.04
GHA: No need to install g++-14 when building cache
GHA: Run tests for i686-w64-mingw32 host
ringbuf: silence superfluous unused function warning on NDEBUG builds
clang-format
Use REQUIRED when finding a package
Remove extra semicolons
examples: GRO buffer size should be 64KiB
Limit the number of ACK frames per packet
Nothing to acknowledge in a 0RTT packet
Introduce ngtcp2_ksl_search
Update doc
fuzz: Fix compile error
Loosen app-limited condition
Tweak threshold for max_stream_data and max_data transmission
Add note for window auto-tuning
examples/client: Disable window auto-tuning by default
ngtcp2_ksl: Use proper type
Retry token validation with more detailed error reporting
examples: Call getnameinfo only when logging is required
Replace http_parser_parse_url with urlparse
Deal with super small RTT
Fix assertion which refers to the wrong variable
tests: Add failmalloc tests for server scenario
Bump wolfssl to v5.7.4
Bump boringssl
Bump picotls
Bump libressl to v4.0.0
Bump aws-lc to v1.39.0
   2024-10-17 20:54:31 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
ngtcp2: updated to 1.8.1

1.8.1

Fix connection stall due to cwnd limited
   2024-10-10 10:46:11 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
ngtcp2: updated to 1.8.0

ngtcp2 v1.8.0

ngtcp2_ringbuf: Update doc and style
Vec refactor
ngtcp2_cid: Update doc and style
Add const qualifier
ngtcp2_pkt_decode_hd_long: Do not touch dest on error
ngtcp2_pkt_decode_ack_frame: Remove useless initialization
Change clang-format options
Fixing cmake export
Rtb on pkt lost
Rtb refactor
Crypto refactor
ngtcp2_pkt_encode_ack_frame: Make fr const and fix doc
ngtcp2_ppe: Update style
Pkt refactor
get_uvarint: Simplify by adopting consistent function signature
ngtcp2_get_uint*: Use dest directly
ngtcp2_put_pkt_num: Simplify and add tests
Rename ngtcp2_put_uint* functions
Revert "Rename ngtcp2_put_uint* functions"
Rename ngtcp2_get_uint* functions
Remove unused ngtcp2_get_uint48be and ngtcp2_put_uint48be
Remove useless condition
Update doc
Add LibreSSL
ngtcp2_acktr: Simplify
Remove unused NGTCP2_MAX_RX_(INITIAL|HANDSHAKE)_CRYPTO_DATA
ngtcp2_map: Fix hash computation
ngtcp2_map: Rename tablelenbits to hashbits
Map refactor
Conditional compile improvements
clang-format
get_uvarint: Remove unnecessary shift
Consistent macro comments
ngtcp2/version.h: Prepend NGTCP2_ prefix to the include guard
Update macro comments missed
Remove unused ngtcp2_nth_(server|client)_(bidi|uni)_id functions
Small optimization for immediate ack
Check pending_early_datalen before try sending 0RTT data
Add test to verify empty stream retransmission in 0RTT on Retry
examples: Add missing square brackets
Fix ARM64 __popcnt intrinsics
Do not enter app_limited if connection is pacing limited
ngtcp2_cc: Remove target_cwnd, use is_app_limited flag instead
Call ngtcp2_rst_on_ack_recv only when a packet is newly acked
ngtcp2_rst: Remove window filter and ineffective next_round_delivered
Revert "ngtcp2_rst: Remove window filter and ineffective \ 
next_round_delivered"
Call cc on_ack_recv only when a packet is newly acknowledged
ispow2: Better fallback implementation
ngtcp2_rst: Fix round counting
ngtcp2_rst: Remove window filter
Add missing ispow2 macro comment
examples: Bail out with ciphers option when TLS stack ignores it
CUBIC RFC 9438
Amend CUBIC
Hystart++ RFC 9406
PING bundled with ACK should trigger PTO
Extend ngtcp2_frame
cmake: Remove trailing whitespaces
Simplify condition
cubic: Increase CWND under app limited if CWND limited is observed
Bump quictls to 3.1.7+quic
Bump boringssl
Bump aws-lc to v1.36.1
   2024-08-24 08:55:32 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
ngtcp2: updated to 1.7.0

ngtcp2 v1.7.0

Refactor gha
Fix examples for picotls + libressl
Cleanup end of macro comments and clang-format
GHA: Remove EXTRA_LDFLAGS
Bump docker/build-push-action from 5 to 6
Add ngtcp2_tpe, testing packet encoder
Refactor packet writer functions for testing
Disable dependency tracking
GHA: Suppress warnings
Fix UDP_GRO struct cmsghdr data type
ngtcp2_ppe: Cleanup doc and fix typo
ngtcp2_strm: Cleanup doc and style
Rob cleanup
Refactor ksl
ngtcp2_gaptr: Cleanup doc and style
ngtcp2_idtr: Clean doc and fix wrong assertions
Added options to command find_package
Fix deprecation warning in examples/template.h
Bump clang format
interop: Fix ticket nonce size issue
ngtcp2_range: Cleanup doc and style
Update doc
ngtcp2_idtr: Remove server field
Refactor map
ngtcp2_map: Store psl in bucket
ngtcp2_pq: Refactor, cleanup doc and style
ngtcp2_ksl: Cleanup doc and style
ngtcp2_balloc: Optimize alignment space for 16 bytes boundary malloc
ngtcp2_map: Fix bug that psl is not updated when an element is removed
ngtcp2_map: Clear data just once
Fix typo in error log for SSL_CTX_new
Add LibreSSL and Picotls+LibreSSL to CI
Adjust the alignment of ngtcp2_ksl_node
CI: Run pytest for group-c
Ksl refactor
Fix ksl fuzzer
Const
fuzz: Exercise ksl deletion a bit more
Use OSSL_ENCRYPTION_LEVEL instead of ssl_encryption_level_t.
clang-format
Update BBR
bbr: Remove resetting and remembering values on loss
Bbr startup high loss
Bump boringssl
Bump aws-lc to v1.34.2
Bump picotls
Bump wolfssl to v5.7.2
interop: Bump ubuntu to 24.04
   2024-06-14 17:25:45 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
ngtcp2: updated to 1.6.0

ngtcp2 v1.6.0

examples: Print negotiated group if TLS stack gives that information
Remove ngtcp2_min and ngtcp2_max
GitHub does not understand :rfc:
Keep-alive packet should trigger PTO
Fix ngtcp2_conn_stat.max_tx_udp_payload_size update
Adjust memory pool allocation units to reduce allocation size
Adjust NGTCP2_ACKTR_MAX_ENT to match NGTCP2_MAX_ACK_RANGES + 1
Allocate ngtcp2_acktr_entry at once not to waste memory
Update doc
Reset pto_count when disarming loss detection timer
Bump boringssl
Bump aws-lc to v1.29.0
Bump picotls
Fix memory leak when stream datacnt gets below allocation threshold
Refactor ngtcp2_frame_chain allocation for ngtcp2_stream
   2024-05-09 12:01:19 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
ngtcp2: updated to 1.5.0

ngtcp2 v1.5.0

Fix release script
autotools: Switch to tar-pax
Pack more QUIC packets on large PMTUD probes
Drop UDP datagram if it comes from a well-known port
Rework transmitting empty STREAM frame
Take into account SCID length when computing minimum packet size
More prohibited ports
client: Handle error from feed_data
server: Send stateless reset
crypto: Adjust token stack buffer sizes
crypto: Reduce NGTCP2_CRYPTO_TOKEN_RAND_DATALEN to 16
Bump wolfssl to v5.7.0-stable
Group up integration test output
QUIC min Short packet is 22
cmake: add BUILD_TESTING, fix MSVC with static + shared
adding "git submodule" and libev stuff
Bump munit
ci: Add macos-14
server: Fix stateless reset buffer stack buffer overflow
Adopt std::to_array
Fix interop
server: Use std::span for sized binary data
client: Use std::span for sized binary data
examples: More std::span
std::unordered_map lookup by std::string_view
Refactor Buffer
interop: Support linux/arm64
chore: Build multi-platform Docker image during CI
interop: Build images on multiple runners
interop: Push multi platform images
Fix interop image tag
interop: Add missing h09 client/server
Refactor format_hex
CMakeLists(.txt): Add Build Test info on summary
Bump munit
server: Refactor packet write
Remove unused streq_l
Bump aws-lc to v1.26.0
Fix nullptr dereference
Bump boringssl
Bump picotls
   2024-03-18 19:28:18 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
ngtcp2: updated to 1.4.0

1.4.0

Erase sensitive data before freeing memory
Fix compile error with libstdc++6-14
Make congestion controller use the current path MTU
Reduce malloc call in conn_new
Add missing FindJemalloc.cmake to EXTRA_DIST
Automate release process
Make Path MTU Discovery probes configurable
examples: Add --pmtud-probes option
Accept zero length UDP datagram payload and just return 0
Deal with the case that send_quantum < max_udp_payload_size
Adjust simpleclient buffer to have default max_tx_udp_payload_size
Document about outgoing UDP datagram payload size
Move ngtcp2_settings_default_versioned to ngtcp2_settings.c
Refactor acktr
Cleanup free functions called from conn_new
Make functions that discard pkns callable from the other source files
Add typed ngtcp2_min and ngtcp2_max functions
Avoid setting 0 after memset
Move ngtcp2_transport_params functions to its own file
Remove unused ngtcp2_conversion_test.c
Move struct version to the last argument
git clone recursive
Update README.rst
ngtcp2_conn_write_connection_close: Fix assertion failure
Fix assertion failure because of failing dup Connection ID check
fuzz: Add read_write_pkt fuzzer
Workaround llvm issue
fuzz: Add missing include
fuzz: Workaround llvm issue
Add 2 new ngtcp2_ccerr_type values
Add handshake fuzzer
docker: Use copy --link
Bump aws-lc to v1.23.0
Bump boringssl
Bump picotls
Switch to distroless/base-nossl
Remove debug printf
Add padding to at most 1200 bytes
Add ngtcp2_ppe padding tests