Marten Seemann
443c6148b6
protocol: add string representation for ECN values ( #4008 )
2023-08-18 17:17:37 -07:00
Marten Seemann
5c5db8cc59
reassemble post-handshake TLS messages before passing them to crypto/tls ( #4038 )
2023-08-18 17:16:57 -07:00
Marten Seemann
501cc21c4b
expose crypto/tls errors on the TransportError ( #4015 )
2023-08-18 03:01:49 -07:00
Marten Seemann
f7f4872bb9
Merge pull request #4005 from quic-go/gso-detection
...
enable GSO, disable if sending fails for a particular address
2023-08-18 13:01:23 +07:00
Marten Seemann
3822dae9bb
handshake fuzzer: fix setting of cipher suites ( #4037 )
2023-08-16 22:26:36 -07:00
Marten Seemann
5200f27dcf
add QUIC_GO_DISABLE_GSO env to disable GSO
2023-08-16 22:09:30 +07:00
Marten Seemann
3a3169551b
detect kernel GSO support
2023-08-16 22:09:30 +07:00
Marten Seemann
4122eb7a7d
disable GSO if sending fails for a particular remote address
2023-08-16 22:09:29 +07:00
Marten Seemann
83c00a574d
ci: also run integration tests on Windows and macOS ( #3987 )
2023-08-16 07:21:48 -07:00
Marten Seemann
51d257d608
handshake fuzzer: fix TLS handshake sequence ( #4033 )
...
There were two problems with the existing code:
1. The transport parameters were rejected due to an invalid value for
ActiveConnectionIDLimit, causing the handshake to fail.
2. Handshake messages were passed in at the wrong encryption level,
leading to consistent handshake failures.
2023-08-16 06:55:44 -07:00
Marten Seemann
ca3842d6c8
automatically set the tls.Config.ServerName if unset ( #4032 )
2023-08-16 06:54:42 -07:00
Marten Seemann
4f696569a2
store the server port as an int, not a string, in HTTP tests ( #3959 )
2023-08-16 04:59:11 -07:00
Marten Seemann
2e7ea9119c
add OSS-Fuzz badge to README ( #3942 )
2023-08-16 04:58:07 -07:00
Marten Seemann
bda01bc489
handshake: use the correct hash function for TLS_AES_256_GCM_SHA384 ( #4031 )
2023-08-15 20:09:01 -07:00
Marten Seemann
1d848392bc
ignore QUICConn.SendSessionTicket error if session tickets are disabled ( #4030 )
2023-08-15 19:53:41 -07:00
Marten Seemann
70f3f44a09
http3: remove leftover ALPN constant for draft-29 ( #4027 )
2023-08-13 19:36:01 -07:00
Egon Elbre
b65ed61fea
integrationtests: fix proxy test on Windows ( #4023 )
2023-08-13 01:43:28 -07:00
Ondrej Kokes
05db808f72
http3: change code point for HTTP datagrams to RFC 9297 ( #3588 )
...
* HTTP/3 Datagrams are now RFC 9297
* Use datatracker htmlized docs rather than rfc-editor (to be consistent)
2023-08-09 06:30:46 -07:00
Gokul PM
10d1114962
README: fix invocation of Go routine in example ( #4019 )
2023-08-09 05:26:39 -07:00
elagergren-spideroak
571d3adef4
fix compatibility with API breaking change in Go 1.21 ( #4020 )
...
* add Go 1.21 compatibility
Signed-off-by: Eric Lagergren <elagergren@spideroak-inc.com >
* refactor for Go 1.20
Signed-off-by: Eric Lagergren <elagergren@spideroak-inc.com >
---------
Signed-off-by: Eric Lagergren <elagergren@spideroak-inc.com >
2023-08-09 05:22:30 -07:00
Marten Seemann
aab4d4e410
fix handling of ACK frames serialized after CRYPTO frames ( #4018 )
2023-08-05 18:48:53 -04:00
Marten Seemann
95ab7bdc9a
add tls.ClientHelloInfo.Conn for recursive GetConfigForClient calls ( #4016 )
2023-08-05 13:00:11 -07:00
Marten Seemann
26c6fcc549
add error handling when confirming handshake on HANDSHAKE_DONE frames ( #4017 )
2023-08-05 07:02:24 -07:00
Marten Seemann
18d3846d4f
set a net.Conn for tls.ClientHelloInfo.Conn used by GetCertificate ( #4014 )
2023-08-03 20:33:19 -04:00
Marten Seemann
f9f6b9df6e
update qtls to restrict RSA keys in certificates to <= 8192 bits ( #4012 )
2023-08-03 08:20:32 -07:00
Ameagari
1c47ebefc0
check transport parameters after 0-RTT resumption ( #3985 )
...
* check new transport parameters do not contain redueced limits
* redefine ValidForUpdate and add tests
* fix test assertion and update comment
2023-08-01 18:34:42 -07:00
Marten Seemann
f3a0ce1599
set a net.Conn with the correct addresses on the tls.ClientHelloInfo ( #4001 )
v0.37.1
2023-07-31 13:32:10 -07:00
Marten Seemann
44a58dc425
ci: update Go 1.21 to rc3 ( #3994 )
2023-07-28 21:45:45 -07:00
roc
32f8b20ae5
http3: fix check for content length of the response ( #3998 )
...
* fix: check response content-length other than request content-length
* Update http3/client.go
---------
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
2023-07-28 21:18:26 -07:00
Marten Seemann
469a6153b6
use a synchronous API for the crypto setup ( #3939 )
v0.37.0
2023-07-21 10:00:42 -07:00
WeidiDeng
2c0e7e02b0
http3: panic in ResponseWriter.WriteHeader for invalid status codes ( #3984 )
...
* response writer: panic for invalid status code
* add tests
* readd imports
* readd imports
* fix imports
2023-07-21 09:50:51 -07:00
Marten Seemann
2bcfe5bc4b
check for WSAEMSGSIZE errors when receiving UDP packets on Windows ( #3982 )
...
* check for WSAEMSGSIZE errors when receiving UDP packets on Windows
* check EMSGSIZE error on macOS
2023-07-20 20:31:57 -07:00
WeidiDeng
2183283622
http3: discard negative content-length header when writing response ( #3983 )
...
* response writer: discard negative content-length header
* shorten comment
---------
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
2023-07-20 11:42:37 -07:00
Marten Seemann
5a22ac8970
http3: enforce that DATA frames don't exceed Content-Length ( #3980 )
2023-07-20 09:47:01 -07:00
Sukun
56cd866840
enable the DF bit on macOS ( #3946 )
...
* set DF bit on macOS
* simplify macOS version check
* link to chromium source for macOS 11 check
2023-07-19 12:01:03 -07:00
Marten Seemann
ae8bdd79e0
http3: use correct error code when request header parsing fails ( #3979 )
2023-07-19 11:46:10 -07:00
Marten Seemann
a347d664e2
remove OptimizeConn, add a Transport.WriteTo method instead ( #3957 )
...
* remove OptimizeConn, add a Transport.WriteTo method instead
* fix race condition in Transport.WriteTo
2023-07-19 10:28:11 -07: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
Marten Seemann
5ae28928db
http3: reject unknown pseudo headers ( #3973 )
2023-07-18 22:42:26 -07:00
Marten Seemann
b6dbfc8c06
http3: reject responses that don't set the :status header ( #3975 )
2023-07-18 22:26:46 -07:00
Marten Seemann
5d59c3059f
http3: deduplicate Content-Length headers ( #3972 )
2023-07-18 21:52:21 -07:00
Marten Seemann
bb296b8c17
http3: unify handling of request and response headers ( #3969 )
2023-07-18 21:39:05 -07:00
Marten Seemann
ad16aa765d
http3: refactor header field processing into a separate function ( #3971 )
2023-07-18 21:16:50 -07:00
Marten Seemann
514df55288
http3: enforce ordering requirement between pseudo and regular headers ( #3968 )
...
* http3: enforce ordering requirement between pseudo and regular headers
* simplify logic
2023-07-18 09:13:16 -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
ab192a084d
http3: reject negative values for the Content-Length header ( #3966 )
2023-07-17 19:23:54 -07:00
Marten Seemann
c4b3d979bd
http3: reject header field values with invalid characters ( #3967 )
2023-07-17 18:56:29 -07:00
Marten Seemann
baee8184fc
http3: reject header field names with invalid characters ( #3965 )
2023-07-17 18:33:24 -07:00
Marten Seemann
3edacebff0
http3: reject header field that contain non-lowercase characters ( #3964 )
2023-07-17 18:16:01 -07:00
Marten Seemann
8ac22a9483
http3: set the Content-Length header in the http.Request.Header map ( #3963 )
2023-07-16 19:26:15 -07:00