Commit Graph

5632 Commits

Author SHA1 Message Date
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
Artem Mikheev
b7e93b54c9 Implement http3.Server.ServeListener (#3349)
* feat(http3): implement serving from quic.Listener

ServeListener method added to http3.Server allowing serving from an existing listener
ConfigureTLSConfig function added to http3 which should be used to create listeners meant for serving http3.

* docs(http3): add note about using ConfigureTLSConfig to ServeListener

* fix(http3): stop serving non-created listeners after Server.Close

* refactor(http3): return ErrServerClosed once server closes instead of context.Canceled

* feat(http3): close listeners from ServeListener as well

* fix(http3): fix logger not being setup during ServeListener

* test(http3): add unit tests for serving listeners

* test(http3): add tests for ConfigureTLSConfig

* test(http3): added server hotswapping integration test

* fix: race condition in listener tests
2022-03-21 02:20:29 -07:00
Marten Seemann
9c8cadba9e Merge pull request #3345 from lucas-clemente/update-go-118
update for Go 1.18
2022-03-16 09:33:11 +01:00
Marten Seemann
580cc754f3 don't print a receive buffer warning for closed connections (#3346) 2022-03-16 01:32:43 -07:00
Marten Seemann
366097106c use Go 1.18 on CI 2022-03-16 11:16:44 +04:00
Marten Seemann
36977dd528 update qtls-go-1-18 to v0.1.0 2022-03-16 10:10:24 +04:00
Toby
ad1cb27c1b move set DF implementation to separate files & avoid the need for OOBCapablePacketConn (#3334)
* move set DF implementation to separate files & avoid the need for OOBCapablePacketConn

* merge err_size_* into conn_df_* & fix format
2022-03-07 15:21:23 +01:00
Arash Payan
fa070e585e add env to disable the receive buffer warning (#3339)
If the env QUIC_GO_DISABLE_RECEIVE_BUFFER_WARNING is set to true
(as defined by strconv.ParseBool()), the receive buffer warning
will not be printed out.
2022-03-07 15:16:52 +01:00
Toby
17952f3e06 fix typo (#3333) 2022-02-20 05:24:26 -08:00
Marten Seemann
71c8af30ea update GitHub Actions to use Go 1.18rc1 (#3335) 2022-02-20 05:23:51 -08:00
Rachel Chen
fd2c345152 sendQueue: ignore "datagram too large" error (#3328)
This commit introduces additional platform-dependent checking when the
kernel returns an error. Previously, the session is terminated when
PingFrame sends a discovery packet larger than the limit. With this
commit, the error is checked, and if it is "datagram too large", the
error is ignored.

Additionally,
1. This commit re-enables MTU discovery on Windows unless it
is disabled explicitly by user (Undo #3276),
2. Set IP_DONTFRAGMENT and IPV6_DONTFRAG with error checking on Windows,
   and
3. Set IP_MTU_DISCOVERY to PMTUDISC_DO for both IPv4 and IPv6 on Linux
   so that the kernel will return "message too long".

Fixes #3273 #3327
2022-02-20 00:21:32 -08:00
Marten Seemann
f3b098775e add OONI Probe to list of projects in README (#3324) 2022-01-29 05:41:38 -08:00
Marten Seemann
86b6ee74ff remove build status badges from README (#3325) 2022-01-29 05:41:10 -08:00
Marten Seemann
496fbe9fda Merge pull request #3317 from lucas-clemente/allow-window-increase
add a AllowConnectionWindowIncrease config option
v0.25.0
2022-01-17 22:08:14 -08:00
Marten Seemann
45d449acea document possible deadlocks in AllowConnectionWindowIncrease 2022-01-18 09:53:59 +04:00
Marten Seemann
cb6db58fc1 use a uint64 in the AllowConnectionWindowIncrease callback 2022-01-18 09:23:56 +04:00
Glenn
976cc29c16 Update README.md (#3315) 2022-01-17 06:11:36 -08:00
Marten Seemann
bfd685faf2 add a AllowConnectionWindowIncrease config option 2022-01-14 12:04:04 +04:00
Marten Seemann
f9904c7c45 add a callback to block window increases to the connection flow controller 2022-01-14 12:03:30 +04:00
Marten Seemann
a98e60c28c fix some typos in documentation and tests 2022-01-14 11:23:14 +04:00
Marten Seemann
f34eddae41 Merge pull request #3313 from lucas-clemente/mockgen-no-goimports
remove unneeded calls to goimports when generating mocks
2022-01-09 08:28:42 -08:00
Marten Seemann
7d5a7b47cb remove unneeded calls to goimports when generating mocks 2022-01-09 10:11:21 +04:00
Benedikt Spies
63b7354a25 fix comment about congestionWindow value (#3310) 2022-01-03 05:20:37 -08:00
市川恭佑 (ebi)
59958e5282 fix typo *connections (#3309) 2022-01-01 23:10:01 -08:00
Marten Seemann
1f3350557e Merge pull request #3298 from lucas-clemente/go118
add support for Go 1.18
2021-12-16 10:40:23 +04:00
Marten Seemann
ba4d02017c add support for Go 1.18 2021-12-15 10:13:31 +04:00
Marten Seemann
b935a54c29 Merge pull request #3290 from lucas-clemente/fix-receive-stream-mutex
don't unlock the receive stream mutex for copying from STREAM frames
v0.24.0
2021-10-19 12:22:59 +02:00
Marten Seemann
2c8b939d4c add an integration tests that cancels streams frequently 2021-10-16 19:24:28 +02:00
Marten Seemann
344feb9ea5 don't unlock the receive stream mutex for copying from STREAM frames 2021-10-16 19:24:28 +02:00
Marten Seemann
bb8d4844d5 run integration tests with Go 1.17.x 2021-10-16 19:08:47 +02:00
Marten Seemann
a22a9eae30 Merge pull request #3266 from bt90/patch-2
List projects using quic-go
2021-10-13 08:56:30 +01:00
Marten Seemann
e6572e3d0a Merge pull request #3276 from lucas-clemente/windows-disable-pmtud
disable Path MTU Discovery on Windows
2021-10-13 08:55:42 +01:00
Marten Seemann
9fb18cc511 Merge pull request #3268 from lucas-clemente/fix-undecryptable-packet-run-loop
enter the regular run loop if no undecryptable packet was processed
2021-10-13 08:55:19 +01:00
Marten Seemann
f0fab3a3bb Merge pull request #3272 from aaronriekenberg/master
Allow use of custom port value in Alt-Svc header.
2021-10-12 10:10:06 +01:00
Marten Seemann
8493fe20d5 Merge pull request #3286 from lucas-clemente/disable-goconst
disable the goconst linter
2021-10-12 10:08:43 +01:00
Marten Seemann
7ade2a05d6 disable the goconst linter 2021-10-12 10:49:35 +02:00
Aaron Riekenberg
afbe993b4c Add test setting http3.Server.Port. 2021-09-19 15:51:09 -05:00
Sudarshan Reddy
c5aeee39ad use x/net/ipv{4,6} to construct oob info when writing packets (#3278) 2021-09-18 13:05:26 -07:00
Aaron Riekenberg
23665f1b25 Merge remote-tracking branch 'upstream/master' 2021-09-18 10:35:32 -05:00
Aaron Riekenberg
43ee0c6757 Export http3.Server.Port. 2021-09-18 10:29:37 -05:00
Aaron Riekenberg
8b56e7d2b5 Revert "Allow use of custom port value in Alt-Svc header."
This reverts commit ce8167c3cf.
2021-09-18 10:22:57 -05:00
Marten Seemann
d410b590e9 disable Path MTU Discovery on Windows 2021-09-17 18:24:26 +02:00
Marten Seemann
3b46d7402c Merge pull request #3277 from lucas-clemente/gofmt
run gofmt to add the new go:build tags
2021-09-16 11:53:01 +02:00
Marten Seemann
59ea0daea1 run gofmt to add the new go:build tags 2021-09-14 18:37:41 +02:00
Aaron Riekenberg
ce8167c3cf Allow use of custom port value in Alt-Svc header. 2021-09-11 10:43:37 -05:00
Marten Seemann
a54b00e770 enter the regular run loop if no undecryptable packet was processed 2021-09-08 15:35:53 +01:00
bt90
5cca3f121c List projects using quic-go 2021-09-07 20:45:15 +02:00
Marten Seemann
ebcd98ed43 Merge pull request #3264 from heyitsmine/fix-log-info
fix log string in client example
2021-09-06 20:28:15 +01:00
Song Zhu
b998c58496 fix log info error 2021-09-05 17:22:21 +08:00