Marten Seemann
d234d62d52
qtls: only attempt 0-RTT resumption for 0-RTT enabled session tickets ( #4183 )
2023-12-09 06:17:47 -08:00
Charles Xu
38eafe4ad8
README: add gost project ( #4154 )
...
* chore: add project
* fix name
* revert unrelated whitespace fix
---------
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
2023-12-06 19:18:33 -08:00
Marten Seemann
9b40c50a73
http3: use the AdditionalSettings for requests ( #4156 )
2023-12-06 06:22:23 -08:00
Benedikt Spies
45922f76d6
reduce calls to time.Now() calls in connection ( #4191 )
2023-12-06 06:00:58 -08:00
Marten Seemann
87ef8ec48d
fuzzing: add transport parameter validation logic ( #4175 )
2023-12-03 05:53:36 -08:00
chungthuang
7b9d21fbe6
send large max_datagram_frame size, introduce a DatagramTooLargeError error ( #4143 )
...
The size can be overwritten to a lower value for testing.
2023-12-02 06:27:15 -08:00
Marten Seemann
2d7ea37672
wire: reject NEW_CONNECTION_ID frames with zero-length conneciton IDs ( #4180 )
2023-11-23 02:41:12 -08:00
Marten Seemann
771d136fa9
interop: update Go version to 1.21.4 ( #4179 )
2023-11-22 20:30:26 -08:00
Marten Seemann
3bf2e19d0d
logging: pass the packet number to ConnectionTracer.DroppedPacket ( #4171 )
...
In most cases the packet number is not known when a packet is dropped,
but it's useful to log the packet number when dropping a duplicate
packet.
2023-11-17 04:11:16 -08:00
Marten Seemann
96ab48eb7d
fix serialization of connection ID in filenames of qlog files ( #4170 )
2023-11-16 22:06:42 -08:00
Marten Seemann
427f53328b
fix flaky server test ( #4167 )
2023-11-14 02:00:42 -08:00
Anders Pitman
740119b144
README: fix typo ( #4166 )
2023-11-14 01:09:47 -08:00
Marten Seemann
9414ea4910
ackhandler: immediately acknowledge ECN-CE marked packets ( #4147 )
...
* ackhandler: immediately acknowledge ECN-CE marked packets
* shorter debug statements
2023-11-03 08:28:16 -07:00
Marten Seemann
d4ab27de1f
don't set the TLS version in the transport ( #4135 )
...
This is already done in the crypto setup.
2023-10-31 22:27:13 -07:00
Marten Seemann
f23da7da47
congestion: don't use floating point math when calculating pacing times ( #4148 )
2023-10-31 02:21:42 -07:00
Marten Seemann
a3603549ee
document what happens to established connections on Listener.Close ( #4138 )
v0.40.0
2023-10-27 23:40:50 -07:00
Marten Seemann
6eb0caca1a
fix race condition in multiplex integration test ( #4136 )
2023-10-27 22:08:49 -07:00
Marten Seemann
5311f8178c
README: link to webtransport-go repo ( #4117 )
2023-10-27 02:21:26 -07:00
Marten Seemann
dda63b90eb
don't close established connections on Listener.Close, when using a Transport ( #4072 )
...
* don't close established connections on Listener.Close
* only close once
2023-10-26 23:10:13 -07:00
Marten Seemann
ef800d6f71
handshake: set MinVersion on the Config returned by GetConfigForClient ( #4134 )
2023-10-26 22:35:07 -07:00
Marten Seemann
d309060cde
handshake: clone the tls.Config returned by GetConfigForClient ( #4133 )
...
We modify this tls.Config, so we should clone it first. Otherwise, this could
cause conflicts with how the application is using that config.
2023-10-26 22:22:20 -07:00
Marten Seemann
e2622bfad8
reject ClientHellos that offer TLS versions older than 1.3 (for Go 1.20) ( #4130 )
2023-10-25 09:49:53 -07:00
Marten Seemann
746290b78a
never allow 0-RTT when using Dial, even if the session ticket allows it ( #4125 )
...
When resuming a TLS session using Dial (and not DialEarly), 0-RTT should
be disabled at the TLS layer, even if the session ticket allows for
0-RTT resumption.
This bug is not critical, since Dial doesn't return an EarlyConnection,
so the client wouldn't be able to actually send 0-RTT data in practice.
2023-10-25 08:20:23 -07:00
Marten Seemann
1bcec70978
ci: run linter on all supported Go versions ( #4126 )
2023-10-24 22:03:41 -07:00
Marten Seemann
30f9c0139f
use typed atomics in integration tests ( #4120 )
...
* use typed atomic in integration tests
* use an atomic.Bool in hotswap test
2023-10-24 21:46:29 -07:00
Marten Seemann
6239effc7a
fix IPv4 ECN control message length on Linux ( #4127 )
2023-10-24 21:18:43 -07:00
Marten Seemann
1c631cf9cb
rename Connection.{Send,Receive}Message to {Send,Receive}Datagram ( #4116 )
...
This is more consistent with both the RFC and the rest of the API. For
example, the option in the Config is already name EnableDatagrams, and
the property in the ConnectionState is named SupportsDatagrams.
2023-10-24 21:18:09 -07:00
Marten Seemann
7884f87f82
ci: use bash on all platforms ( #4122 )
2023-10-22 23:36:45 -07:00
Marten Seemann
4c357c8f76
ci: create separate artifact archives per workflow run ( #4121 )
2023-10-22 22:53:10 -07:00
Marten Seemann
5314d90b9f
fix logging of connection IDs in tracer test ( #4118 )
2023-10-22 22:46:27 -07:00
Glonee
36f7fe7d07
http3: discard body from responses to HEAD requests ( #4115 )
...
* http3: HEAD method should not have a body
* add tests
* Update http3/server.go
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
* ruduce the size of responseWriter
---------
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
2023-10-22 19:31:24 -07:00
Marten Seemann
a263164d9f
use new gomock feature to generate type-safe methods in mocks ( #4057 )
2023-10-20 22:55:33 -07:00
Marten Seemann
b344940f06
catch EPERM sendmsg errors for the very first packet on Linux ( #4111 )
2023-10-17 01:23:33 -07:00
Marten Seemann
262cf0a592
fix IPv4 ECN control message length on FreeBSD ( #4110 )
2023-10-16 22:50:40 -07:00
Marten Seemann
f49944b737
README: add qlog to list of supported RFCs, add an example ( #4102 )
2023-10-13 00:05:47 -07:00
Marten Seemann
49e588a6a9
don't spawn a new Go routine to send a Retry packet ( #4092 )
2023-09-25 04:21:51 -07:00
Marten Seemann
ae2ef95fa3
don't spawn a new Go routine to send a CONNECTION_REFUSED packet ( #4091 )
2023-09-25 09:31:27 +00:00
Marten Seemann
348042ee4c
simplify sending of INVALID_TOKEN errors ( #4090 )
2023-09-25 02:14:07 -07:00
Marten Seemann
9a397abc17
update gomock to v0.3.0 ( #4087 )
v0.39.0
2023-09-24 04:38:28 -07:00
Toby
4bdff39ff0
README: add Hysteria ( #4085 )
...
* chore: add my project
* fix order
2023-09-24 04:01:03 -07:00
Marten Seemann
4a046185b7
ackhandler: fix ECN mangling detection when packets are lost ( #4089 )
...
Some of the 10 testing packets are might be lost, while others might be
CE-marked. We need to detect mangling if all testing packets are either
lost are CE-marked.
2023-09-17 22:08:33 -07:00
Marten Seemann
c12f425803
ackhandler: don't fail ECN validation if less than 10 testing packets are lost ( #4088 )
...
* ackhandler: don't fail ECN validation less than 10 testing packets lost
* ackhandler: simplify checks for mangling and loss of all testing packets
2023-09-17 23:00:05 +04:00
Marten Seemann
9010cfd2bb
remove unused unknownPacketHandler interface ( #4093 )
2023-09-17 05:20:13 -07:00
Marten Seemann
22fb59ee6f
create FUNDING.yml
2023-09-17 05:18:43 -07:00
Marten Seemann
55eebd49ff
return the cancellation cause for cancelled dials ( #4078 )
2023-09-16 05:37:58 -07: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
d8cc4cb3ef
http3: introduce an HTTP/3 error type ( #4039 )
...
* http3: introduce an HTTP/3 error type
* http3: use a pointer receiver for the Error
2023-09-16 04:57:50 -07:00
Marten Seemann
ab1c1be9a9
basic ClusterFuzzLite integration ( #4034 )
2023-09-15 09:57:13 -07:00
Marten Seemann
22eac50276
ci: combine the go generate workflow with the linting workflow ( #4053 )
...
* ci: combine the go generate workflow with the linting workflow
* reorder
2023-09-15 09:56:20 -07:00