* Allow stateless reset token key to be set #1719
* Update src/core/library.c
How about we use the same way as the random initial reset key, we call MsQuicLibraryFreePartitions() to set all PerProc->ResetTokenHash to NULL
Co-authored-by: Nick Banks <nibanks@microsoft.com>
* Address the code review feedback
* Revert clog.sidecar changes
* Add event for stateless reset key
* Revert the file clog.sidecar
* Remove DatapathTcpAuxBinding changes from clog.sidecar
* Remove parameter from function QuicTestStatelessResetKey and address other comments
* Update src/test/MsQuicTests.h
Co-authored-by: Nick Banks <nibanks@microsoft.com>
* Update src/core/library.c
Co-authored-by: Nick Banks <nibanks@microsoft.com>
* Update src/test/lib/DataTest.cpp
Co-authored-by: Nick Banks <nibanks@microsoft.com>
* Address code review comments
* Move stateless reset key after the other global param
* Address CheckDotnet test and update document
* Address the failure at CIFuzz
* Address the failure in CIFuzz
* Add one test case when MsQuic lib has not been initialized yet
---------
Co-authored-by: Nick Banks <nibanks@microsoft.com>
* add new parameter
* remember to set success status
* add test cases
* fix test cases
* fix styling
* no need to redefine client config
* add non-null checking
* fix formatting and use helpers
* update description and add trailing whitespace
* add null ptr queries
* run ./scripts/generate-dotnet.ps1
---------
Co-authored-by: Jack He <jackhe@microsoft.com>
This PR implements 13.4.2. ECN Validation in RFC9000. The ECN validation algorithm implemented in this PR is very similar to the sample algorithm given in RFC9000 A.4. The details can be found at the top of path.h.
This PR also adds a new global QUIC setting, EcnEnabled and a flag, EcnCapable, in connection stats.
This PR does not implement CC ECN reaction, which will be done in a separate PR.
* Revert "Rename QUIC_ACK_EVENT/QUIC_LOSS_EVENT fields to match their QUIC_LOSS_DETECTION counterparts (#2919)"
This reverts commit ec3c56fab5.
* Revert "Implement BBR congestion control algorithm (#2071)"
This reverts commit f1950591ef.
Initial commit. Several followup fixes are needed:
-no SendPostedBytes variable in QuicLossDetectionOnPacketSent (also remove "Entry" and "Stream"?)
-"LargestSentPacketNumber" and "LargestPacketNumberSent" names inconsistent (use LargestSentPacketNumber as used in QUIC_LOSS_DETECTION)
-Remove BbrCongestionControlUpdateRoundTripCounter nonhelper
-Remove BbrRttStatsUpdate nonhelper
-Remove NewBbrRttStats nonhelper
-Remove BbrBandwidthFilterOnAppLimited nonhelper
-Remove BbrCongestionControlHandleAckInProbeBw nonhelper
-QuicLossDetectionOnPacketSent checks for nonzero TimeOfLastPacketAcked- is there a bug on overflow of this uint32_t?
-Get rid of "Iterator" variables?
-Better name for QuicLossDetectionDiscardPackets?
-Combine SlidingWindowExtremumUpdateMin and SlidingWindowExtremumUpdateMax, then merge in SlidingWindowExtremumExpire
-Add comment for where the spec is for the logic gating the call to QuicCongestionControlSetAppLimited
-SendPostedBytes initialization in QuicLossDetectionOnPacketSent assumes send buffering is being used?
Co-authored-by: Nick Banks <nibanks@microsoft.com>
A stream level GetParam API to stats (mainly for flow blocked timings).
Flow blocked timings include both stream level and parent connection level flow blocked timings.