Marten Seemann
ec118e440c
protect against concurrent use of Stream.Read ( #3380 )
2022-04-25 03:58:11 -07:00
hareku
823c609be4
Expose quic server closed err ( #3395 )
...
* expose quic server closed error
* http3.Server's serving method returns http.ErrServerClosed when quic listener is closed
* Revert "http3.Server's serving method returns http.ErrServerClosed when quic listener is closed"
This reverts commit fb1f244440 .
2022-04-25 03:10:55 -07:00
hareku
1a0d577854
implement HTTP/3 unidirectional stream hijacking ( #3389 )
...
* implement HTTP/3 unistream hijacking
* Apply suggestions from code review
Fixed name consistency.
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
* rename unistream to unidirectional stream
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
2022-04-21 09:51:18 -07:00
Marten Seemann
6d4a694183
add LocalAddr and RemoteAddr functions to http3.StreamCreator ( #3384 )
2022-04-16 06:09:01 -07:00
Marten Seemann
21160a02ff
Merge pull request #3362 from lucas-clemente/webtransport
...
extend the HTTP/3 API for WebTransport support
2022-04-16 13:51:25 +01:00
Marten Seemann
ff6313fdb3
make the responseWriter hijackable
2022-04-03 14:28:15 +01:00
Marten Seemann
a983db0301
pass the connection to the client's StreamHijacker callback
2022-04-03 14:28:15 +01:00
Marten Seemann
448e8bcf05
add a stream ID getter function to the body
2022-04-03 14:28:15 +01:00
Marten Seemann
eddb2b819a
add a stream ID getter function to the responseWriter
2022-04-03 14:28:15 +01:00
Marten Seemann
9c8cdeda57
allow HTTP clients to set the number of incoming streams in quic.Config
2022-04-03 14:28:15 +01:00
Marten Seemann
48a2cce9df
implement HTTP/3 stream hijacking
2022-04-03 14:28:15 +01:00
Marten Seemann
a54816867f
make it possible to set settings unknown to the http3 package
2022-04-03 14:28:15 +01:00
Marten Seemann
57461e01b5
add a http3.Hijacker that allows stream creation on a QUIC session from a http.Response.Body
2022-04-03 14:28:15 +01:00
Marten Seemann
332473668a
remove unneeded network from custom dial function used in HTTP/3 ( #3368 )
2022-04-03 06:27:55 -07:00
Marten Seemann
fa0dba963a
Merge pull request #3367 from lucas-clemente/update-golangci-lint
...
stop using the deprecated net.Error.Temporary, update golangci-lint to v1.45.2
v0.27.0
2022-04-03 12:43:45 +01:00
Marten Seemann
7c63050da1
remove deprecated scopelint linter from golangci-lint
2022-04-02 20:36:18 +01:00
Marten Seemann
42bfe5aa70
add a nolint directive for the use of net.Error.Temporary when reading from conn
2022-04-02 20:35:43 +01:00
Marten Seemann
4f85f45f0a
stop using net.Error.Temporary in tests
2022-04-02 20:31:08 +01:00
Marten Seemann
0c6b3dfa93
run the updated version of gofumpt
2022-04-02 20:18:37 +01:00
Marten Seemann
7265441042
update golangci-lint to v1.45.2
2022-04-02 20:06:16 +01:00
Marten Seemann
d1498c360e
add support for serializing Extended CONNECT requests ( #3360 )
2022-04-02 11:55:42 -07:00
Marten Seemann
26fbf99275
Merge pull request #3364 from lucas-clemente/better-go-version-error
...
improve the error thrown when building with an unsupported Go version
2022-04-02 19:55:20 +01:00
Marten Seemann
ba697c5838
also throw an error for outdated Go versions
2022-03-30 16:05:21 +01:00
Marten Seemann
aef7ac0a48
improve the error thrown when building with an unsupported Go version
2022-03-30 15:44:59 +01:00
ignoramous
9620cc745c
remove nextdns from list of projects using quic-go ( #3363 )
...
ref: github.com/nextdns/nextdns/commit/538d0a85
2022-03-28 14:31:43 -07:00
Marten Seemann
d008a253b8
Merge pull request #3361 from lucas-clemente/rename-session
...
rename the Session to Connection
2022-03-27 14:06:59 +02:00
Marten Seemann
4b17343631
rename the session to connection
2022-03-27 12:50:14 +01:00
Marten Seemann
d7ad1b6b9b
rename the connection to rawConn
2022-03-27 12:28:43 +01:00
Marten Seemann
3126062aa7
rename files dealing with low level conns to sys_conn
2022-03-27 12:28:41 +01:00
Marten Seemann
f68b38635a
rename occurrences of session in HTTP/3 server and client
2022-03-27 11:27:25 +01:00
Marten Seemann
9bc32cd021
rename the SessionTracingKey to ConnectionTracingKey
2022-03-27 11:27:25 +01:00
Marten Seemann
a088ba4607
rename quicConn.earlySessionReady to quicConn.earlyConnReady
2022-03-27 11:27:25 +01:00
Marten Seemann
1ae835d1d8
rename occurrences of session in client, server and packetHandlerMap
2022-03-27 11:27:25 +01:00
Marten Seemann
86338d3ce0
rename the sessionRunner to connRunner
2022-03-27 11:27:25 +01:00
Marten Seemann
97690dc493
rename the closed session to closed conn
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
6aaa9a817c
rename the EarlySession to EarlyConnection
2022-03-27 11:27:25 +01:00
Marten Seemann
fda9f72161
replace usages of session in variable names
2022-03-27 11:27:25 +01:00
Marten Seemann
e71c236232
rename the Session to Connection
2022-03-27 11:27:23 +01:00
Marten Seemann
42f3159497
Merge pull request #3359 from lucas-clemente/http3-dial-context
...
respect the request context when dialing
2022-03-25 10:27:43 +01:00
Marten Seemann
d3fab2a230
also the context when dialing an address
2022-03-25 10:11:55 +01:00
Marten Seemann
137491916b
respect the request context when dialing
2022-03-25 09:47:05 +01:00
Marten Seemann
0d5440a024
update HTTP/3 Datagram to draft-ietf-masque-h3-datagram-07 ( #3355 )
2022-03-25 01:44:12 -07:00
Marten Seemann
d065fb47e1
add support for the Extended CONNECT method ( #3357 )
...
Extended CONNECT is used by WebTransport.
2022-03-25 01:43:48 -07:00
Marten Seemann
85b495445e
remove the SkipSchemeCheck RoundTripOpt ( #3353 )
...
This option was needed for an early draft version of MASQUE.
MASQUE now uses the https scheme.
2022-03-25 09:38:17 +01:00
Marten Seemann
3a102406ea
remove parser logic for HTTP/3 DUPLICATE_PUSH frame ( #3356 )
...
This frame was removed in draft-25.
2022-03-25 09:37:56 +01:00
Marten Seemann
08af9fc2c1
improve code coverage of random number generator test ( #3358 )
2022-03-25 09:37:37 +01:00
Artem Mikheev
d4293fb274
advertise multiple listeners via Alt-Svc and improve perf of SetQuicHeaders ( #3352 )
...
* feat: cache alt-svc headers and announce all listeners instead of just one
* feat: use Server.Addr for SetQuicHeaders if no port is available from listeners
v0.26.0
2022-03-22 14:13:05 -07:00
Marten Seemann
4725ddebf3
avoid recursion when skipping unknown HTTP/3 frames ( #3354 )
2022-03-22 08:48:17 -07:00
Marten Seemann
2661c2807d
update qtls packages ( #3351 )
2022-03-21 12:04:26 -07:00