Gaukas Wang
4973374ea5
sync: quic-go 0.42.0
...
Signed-off-by: Gaukas Wang <i@gaukas.wang>
2024-04-23 22:34:55 -06:00
Gaukas Wang
7c77243b04
upstream: sync to 0.39.1
2023-10-26 22:47:22 -06:00
Marten Seemann
1affe38703
move MaxTokenAge configuration option to the Transport ( #4084 )
2023-09-16 05:10:20 -07:00
Marten Seemann
9b82196578
make the logging.Tracer and logging.ConnectionTracer a struct ( #4082 )
2023-09-16 04:58:51 -07:00
Marten Seemann
862e64c7b9
add a Transport config option for the key used to encrypt tokens ( #4066 )
...
* add a Transport config option for the key used to encrypt tokens
* handshake: remove unused error return values
2023-09-15 18:33:57 +07:00
Benedikt Spies
37a3c417a7
expose GSO usage through ConnectionState ( #4083 )
2023-09-13 23:55:49 -07:00
Marten Seemann
abfe1ef548
remove Config.MaxRetryTokenAge, set it to the handshake timeout ( #4064 )
...
There is no good reason to manually set the validity period for Retry
tokens. Retry tokens are only valid on a single connection during the
handshake, so it makes sense to limit their validity to the configured
handshake timeout.
2023-09-10 13:53:12 +07:00
Marten Seemann
e1fcac3e46
set the handshake timeout to twice the handshake idle timeout ( #4063 )
2023-09-09 06:12:37 -07:00
Marten Seemann
d7334c16e7
move the DisableVersionNegotiationPackets flag to the Transport ( #4047 )
...
* move the DisableVersionNegotiationPackets flag to the Transport
* add an integration test for DisableVersionNegotiationPackets
2023-08-30 23:33:40 -07:00
Gaukas Wang
95575f5fe7
break: update repo url [ci skip]
...
uTLS is not yet bumped to the new version, so this commit breaks the dependencies relationship by getting rid of the local replace.
2023-08-03 18:58:52 -06:00
Gaukas Wang
ea40752ca3
new: uquic
2023-08-02 15:38:16 -06:00
Gaukas Wang
20e2a487b8
wip: implement InitialSpec type (1/n)
...
- TransportParameters are now set as a part of ClientHelloSpecs
- Removes transportparameters package and uses tls.TransportParameters
2023-07-30 20:01:07 -06:00
Gaukas Wang
fca46117e4
impl: uquic with utls
2023-07-29 23:45:16 -06:00
Gaukas Wang
251b3afe6e
impl: QUIC Header mimicry
2023-07-29 13:17:27 -06:00
Ferdinand Holzer
27301f791f
surface stream error as stream context cancelation cause ( #3970 )
...
* send stream: surface error as stream context cancellation cause
* Update send_stream_test.go
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
---------
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
2023-07-19 10:12:01 -07:00
Ferdinand Holzer
4378283f95
surface connection error as connection context cancelation cause ( #3961 )
...
* connection: surface connection error as connection context cancellation cause
* docs: add note about connection context canellation cause
2023-07-17 21:31:31 -07:00
Marten Seemann
3d89e545d3
use the new crypto/tls QUIC Transport ( #3860 )
2023-07-01 11:15:00 -07:00
Glonee
435444af7e
add a context to Connection.ReceiveMessage ( #3926 )
...
* add context to ReceiveMessage
* add newlines
---------
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
2023-06-27 11:29:30 -07:00
Marten Seemann
21388c86bb
drop support for draft-29 ( #3903 )
2023-06-21 04:06:44 -07:00
Marten Seemann
85764da3b6
docs: improve doc comments for the ConnectionState fields ( #3901 )
2023-06-15 00:03:36 -07:00
Marten Seemann
614fdb3271
only run DPLPMTUD if the connection can send packets with the DF bit set ( #3879 )
2023-06-02 06:54:34 -07:00
Marten Seemann
1d093d7927
config: handle overflows of stream and flow control limits ( #3866 )
2023-06-02 03:41:14 -07:00
Zxilly
22d6b0e626
docs: fix typo in documentation for EarlyConnection ( #3798 )
2023-05-06 02:36:43 -07:00
Marten Seemann
07ad2cbee2
remove Tracer from Config, put ConnectionTracer constructor there
2023-05-02 15:56:49 +02:00
Marten Seemann
7a0ef5f867
make Config.Allow0RTT a bool, not a callback
2023-05-02 15:56:49 +02:00
Marten Seemann
bc7cb706c5
add a GetConfigForClient callback to the Config
2023-05-02 15:56:49 +02:00
Marten Seemann
ba942715db
remove ConnectionIDLength and ConnectionIDGenerator from the Config
2023-05-02 15:56:49 +02:00
Marten Seemann
b79b532b04
remove StatelessResetKey from the Config, it's now on the Transport
2023-05-02 15:56:49 +02:00
Marten Seemann
86a1234c87
make EarlyListener a struct, not an interface
2023-05-01 14:41:16 +02:00
Marten Seemann
1b64b13750
make Listener a struct, not an interface
2023-05-01 14:41:16 +02:00
Marten Seemann
a4b0265628
use a chan instead of a context in Connection.HandshakeComplete ( #3709 )
2023-03-26 06:51:56 -07:00
Marten Seemann
41ddaa0262
attach the QUIC version to context returned by ClientHelloInfo.Context ( #3721 )
2023-03-26 22:26:14 +09:00
Marten Seemann
58cedf7a4f
rename module, adjust import paths to quic-go/quic-go ( #3680 )
2023-01-21 19:53:57 -08:00
Marten Seemann
b52d34008f
add Allow0RTT opt in the quic.Config to control 0-RTT on the server side ( #3635 )
2023-01-04 16:18:11 -08:00
Marten Seemann
8d496ebb5e
introduce a type for the stateless reset key ( #3621 )
2022-11-16 14:11:25 -08:00
Marco Munizaga
f2d3cb8f43
expose the QUIC version of a connection ( #3620 )
...
* Expose the QUIC version of a connection via connection state
* Update interface.go
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
* Finish rename
* gofmt
* Use public type for version number
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
2022-11-15 14:59:49 -08:00
Stojan Dimitrovski
7b211d6574
expose function to convert byte slice to a connection ID ( #3614 )
2022-11-13 07:46:29 -08:00
Marten Seemann
85fbfb9405
http3: add a Context method to the StreamCreator interface ( #3601 )
2022-10-22 02:51:24 -07:00
Marten Seemann
1283a1f215
rename the variable in quic.Config.AllowConnectionWindowIncrease ( #3602 )
2022-10-21 03:49:03 -07:00
Marten Seemann
1aced95d41
use an array instead of a byte slice for Connection IDs
2022-08-29 11:30:31 +03:00
Marten Seemann
abb913d29c
fix datagram RFC number in documentation for quic.Config ( #3523 )
2022-08-29 10:28:25 +03:00
João Oliveirinha
66f6fe0b71
add support for providing a custom Connection ID generator via Config ( #3452 )
...
* Add support for providing a custom ConnectionID generator via Config
This work makes it possible for servers or clients to control how
ConnectionIDs are generated, which in turn will force peers in the
connection to use those ConnectionIDs as destination connection IDs when sending packets.
This is useful for scenarios where we want to perform some kind
selection on the QUIC packets at the L4 level.
* add more doc
* refactor populate config to not use provided config
* add an integration test for custom connection ID generators
* fix linter warnings
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
2022-08-24 04:06:16 -07:00
Marten Seemann
f2fa98c0dd
implement a more intuitive address validation API
2022-08-12 13:13:29 +03:00
Nuno Diegues
4c96cf75bf
make the keep alive interval configurable ( #3444 )
...
* Make keep alive configurable
* Fix unit tests
2022-06-09 08:31:37 -07:00
Marten Seemann
b2deeceafb
export quic.Version2
2022-05-26 12:57:46 +02:00
hareku
0a08d62dea
remove warning comments of stable implementation ( #3399 )
2022-05-05 01:45:54 -07:00
Marten Seemann
d5961e9d60
update docs to reflect that we support RFC 9221 (Unreliable Datagrams) ( #3382 )
2022-04-25 04:10:51 -07:00
Marten Seemann
9bc32cd021
rename the SessionTracingKey to ConnectionTracingKey
2022-03-27 11:27:25 +01:00
Marten Seemann
6aaa9a817c
rename the EarlySession to EarlyConnection
2022-03-27 11:27:25 +01:00
Marten Seemann
e71c236232
rename the Session to Connection
2022-03-27 11:27:23 +01:00