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
9010cfd2bb
remove unused unknownPacketHandler interface ( #4093 )
2023-09-17 05:20:13 -07:00
Gaukas Wang
856bc02b8f
Merge branch 'upstream' into sync-upstream
2023-08-28 14:12:03 -06:00
Marten Seemann
2797f85fc0
switch from unmaintained golang/mock to go.uber.org/mock ( #4050 )
2023-08-28 02:23:55 -07:00
Marten Seemann
4122eb7a7d
disable GSO if sending fails for a particular remote address
2023-08-16 22:09:29 +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
Marten Seemann
8189e75be6
implement the Transport
2023-05-02 15:56:48 +02:00
Marten Seemann
c9a2f79b1c
simplify mockgen usage for private interfaces ( #3769 )
2023-04-19 07:57:00 -07:00
Marten Seemann
58cedf7a4f
rename module, adjust import paths to quic-go/quic-go ( #3680 )
2023-01-21 19:53:57 -08:00
kixelated
9540d0fed2
use go run
for mockgen, goimports and ginkgo ( #3616 )
2022-11-11 02:11:41 -08:00
Marten Seemann
86338d3ce0
rename the sessionRunner to connRunner
2022-03-27 11:27:25 +01:00
Marten Seemann
e7c2e7e147
rename the quicSession to quicConnection
2022-03-27 11:27:25 +01:00
Marten Seemann
7d5a7b47cb
remove unneeded calls to goimports when generating mocks
2022-01-09 10:11:21 +04:00
Marten Seemann
870c759515
use batched reads
2021-06-27 15:45:10 -07:00
Marten Seemann
ac87292e87
start path MTU discovery when the handshake completes
2021-03-03 12:00:51 +08:00
Marten Seemann
f1c6421845
introduce an interface for the send queue, use a mock in session tests
2021-01-17 16:18:17 +08:00
Marten Seemann
a65274942c
use a mock net.PacketConn in tests
2020-09-27 15:13:07 +07:00
Marten Seemann
89417ab5ca
simplify the connection, rename it to sendConn
2020-08-09 19:24:04 +07:00
Marten Seemann
c809166cab
update gomock, simplify script for generation mocks of private types
2020-01-26 12:53:41 +07:00
Marten Seemann
15301a7f6e
use a mock connection in the session tests
2020-01-17 16:51:39 +07:00
Marten Seemann
9c97a5e95f
add the TokenStore to the quic.Config, store received tokens
2019-08-13 10:52:59 +07:00
Marten Seemann
67f923c736
return the Opener from the crypto setup
2018-12-14 16:46:40 +06:30
Marten Seemann
e0bc72451b
fix the file name of the mock crypto data handler
2018-11-17 08:08:48 +07:00
Marten Seemann
3266e36811
drop support for gQUIC
2018-10-30 10:20:39 +07:00
Marten Seemann
82508f1562
use tls-tris instead of mint
2018-10-26 16:18:49 +07:00
Marten Seemann
b000c32796
use a mock sealing manager in the packet packer tests
2018-10-06 06:49:37 +02:00
Marten Seemann
06db39836b
move queueing of control frames to the framer
2018-09-28 21:04:57 -06:00
Marten Seemann
7034481d9e
get ACK and STOP_WAITING frames in the packet packer
2018-09-28 09:51:05 -06:00
Marten Seemann
76d4d43b50
move the mockgen cleanup commands to the mockgen script
2018-08-11 12:45:48 +07:00
Marten Seemann
b291b33bca
simplify the command line params of the mockgen script
2018-08-11 12:45:48 +07:00
Marten Seemann
04147d86da
rename the cryptoStreamI interface to cryptoStream
2018-08-11 12:45:43 +07:00
Marten Seemann
ad5a3e2fa0
also use the multiplexer for the server
2018-08-08 10:03:22 +07:00
Marten Seemann
b682af20cf
add some more tests for the client multiplexer
2018-07-03 17:30:51 +07:00
Marten Seemann
dacc94ccba
rename the sessionMap to packetHandlerMap
2018-06-23 08:20:29 +07:00
Marten Seemann
b3fd768a61
use a smaller packetHandler interface
...
The packetHandler interface just needs two methods: one for handling
packets, and one for closing.
2018-06-23 08:16:51 +07:00
Marten Seemann
9c5986945e
refactor the map of sessions into a separate struct
2018-05-30 21:10:44 +08:00
Marten Seemann
15da47cf98
use a GoMock mock session in the server and client tests
2018-05-30 21:10:44 +08:00
Marten Seemann
733e2e952b
use callbacks for signaling the session status
...
Instead of exposing a session.handshakeStatus() <-chan error, it's
easier to pass a callback to the session which is called when the
handshake is done.
The removeConnectionID callback is in preparation for IETF QUIC, where a
connection can have multiple connection IDs over its lifetime.
2018-05-29 21:27:08 +08:00
Marten Seemann
302d2a1715
don't use trial decryption for IETF QUIC
2018-03-31 14:29:44 +07:00
Marten Seemann
a298bd01c9
use a gomock packet unpacker
2018-03-31 14:29:44 +07:00
Marten Seemann
69437a0e78
introduce a streamManager interface for the streamsMap
2018-01-10 08:56:15 +07:00
Marten Seemann
e802491a8f
create internal interfaces for send and receive streams
...
And use those for handling frames.
2018-01-10 08:56:13 +07:00
Marten Seemann
d330fda94c
also use the onHasStreamData callback for the crypto stream
2018-01-09 17:17:16 +07:00
Marten Seemann
d195085f65
don't queue the complete window update, but only the stream ID
2017-12-21 19:03:52 +07:00
Marten Seemann
fc8fafd15e
pass a callback containing the callbacks to the stream
2017-12-20 11:49:05 +07:00
Marten Seemann
d2e31c04ab
generate the streamI mock in the quic package
...
By doing so, we can mock private methods of the stream, so they cannot
be type-asserted by users of quic-go.
2017-12-20 10:42:07 +07:00