Commit Graph

3874 Commits

Author SHA1 Message Date
Marten Seemann
03ab56330b Merge pull request #2145 from lucas-clemente/http3-no-server-bidi-streams
don't allow a HTTP/3 server to create bidirectional streams
2019-09-27 09:42:52 +07:00
Marten Seemann
ed9f2ad4d0 Merge pull request #2148 from lucas-clemente/fix-request-cancelation-leakage
fix leaking request cancelation go routine in case an error occurred
2019-09-27 05:18:08 +07:00
Marten Seemann
072136fd2d Merge pull request #2150 from lucas-clemente/fix-stateless-reset-token-race
fix race condition when generating stateless reset tokens
2019-09-27 05:01:34 +07:00
Marten Seemann
288c5af635 fix race condition when generating stateless reset tokens 2019-09-25 08:03:53 +07:00
Marten Seemann
cc90dfadaf fix leaking request cancelation go routine in case an error occurred 2019-09-25 07:21:28 +07:00
Marten Seemann
c41b2e3cdd don't allow the server to create bidirectional streams 2019-09-17 15:57:55 +07:00
Marten Seemann
9e6bff0b98 Merge pull request #2138 from lucas-clemente/linting
update GolangCI-Lint, add some more linters
2019-09-17 15:06:20 +07:00
Marten Seemann
6b22f36d82 add the stylecheck linter 2019-09-17 13:50:19 +07:00
Marten Seemann
ab2b26a5cb add the unparam linter 2019-09-17 13:44:05 +07:00
Marten Seemann
c8aed2861f add the scopelint linter 2019-09-17 13:44:05 +07:00
Marten Seemann
0131dc7fa9 add the prealloc linter 2019-09-17 13:44:05 +07:00
Marten Seemann
1350f499b5 update GolangCI-Lint to v1.18.0 2019-09-17 13:44:05 +07:00
Marten Seemann
07ee05b5a9 Merge pull request #2136 from lucas-clemente/empty-new-tokens
reject NEW_TOKEN frames with empty tokens
2019-09-17 08:06:47 +07:00
Marten Seemann
57a9ed3379 Merge pull request #2134 from lucas-clemente/draft-23-test-vectors
update the Initial salt to draft-23
2019-09-17 08:06:33 +07:00
Marten Seemann
5302d035ae Merge pull request #2139 from lucas-clemente/http3-connection-errors
HTTP/3 connection errors
2019-09-17 08:03:18 +07:00
Marten Seemann
4e0f40f6c1 Merge pull request #2137 from lucas-clemente/struct-alignment
improve memory alignment of frequently used structs
2019-09-17 08:02:58 +07:00
Marten Seemann
b6330461d6 rework stream / connection erros for the client 2019-09-14 10:26:56 +07:00
Marten Seemann
917cfc0d39 rework stream / connection erros for the server 2019-09-14 10:16:43 +07:00
Marten Seemann
807dd67927 improve memory alignment of frequently used structs 2019-09-13 13:37:41 +07:00
Marten Seemann
f15a82d3fd remove stray TODO in the ExtendedHeader 2019-09-13 13:10:13 +07:00
Marten Seemann
2ea8b70ffb reject NEW_TOKEN frames with empty tokens 2019-09-13 11:00:06 +07:00
Marten Seemann
1d6359543d update the Initial salt to draft-23 2019-09-12 10:06:36 +07:00
Marten Seemann
9839669f3b Merge pull request #2132 from lucas-clemente/update-fuzzit
update Fuzzit binary
2019-09-12 08:56:56 +07:00
Marten Seemann
669138ee60 update Fuzzit binary 2019-09-12 08:42:13 +07:00
Marten Seemann
fc962d1837 Merge pull request #2117 from lucas-clemente/send-pooled-stream-frames
use the STREAM frame buffer for receiving stream data
2019-09-08 10:23:46 +07:00
Marten Seemann
b083fd6f0e Merge pull request #2125 from lucas-clemente/chacha-header-protection
implement ChaCha20 header protection
2019-09-07 16:32:19 +07:00
Marten Seemann
4cb8bf3101 put STREAM frames back into the pool when they are acknowledged 2019-09-07 16:31:52 +07:00
Marten Seemann
4cfbb2f134 use STREAM frames from the buffer for sending data 2019-09-07 16:31:52 +07:00
Marten Seemann
039d7ae888 Merge pull request #2116 from lucas-clemente/stream-frame-pool
use a STREAM frame buffer for receiving stream data
2019-09-07 16:31:05 +07:00
Marten Seemann
3bb23836f2 Merge pull request #2105 from lucas-clemente/closed-sessions
refactor how packets arriving after a session is closed are handled
2019-09-07 16:27:40 +07:00
Marten Seemann
de3e1a3de5 log the cipher suite 2019-09-07 11:47:21 +07:00
Marten Seemann
fa89ec345a add support for ChaCha20 header protection 2019-09-07 11:36:50 +07:00
Marten Seemann
33b74fca79 use the new qtls SetWriteKey and SetReadKey interface 2019-09-07 11:36:06 +07:00
Marten Seemann
63c079e234 move header protection to a separate struct 2019-09-07 11:32:48 +07:00
Marten Seemann
75932b2dcd Merge pull request #2124 from lucas-clemente/qtls-1.13
use updated qtls based on Go's 1.13 crypto/tls
2019-09-07 11:32:25 +07:00
Marten Seemann
9d37e2a79f use updated qtls based on Go's 1.13 crypto/tls 2019-09-06 11:14:34 +07:00
Marten Seemann
9d92550e4e Merge pull request #2107 from lucas-clemente/fix-sent-frame-logging
fix logging of sent frames
2019-09-05 15:02:14 +07:00
Marten Seemann
7b88d8fdb5 Merge pull request #2112 from lucas-clemente/update-h3-errors
update HTTP/3 errors
2019-09-05 15:01:58 +07:00
Marten Seemann
ce6f5c453f Merge pull request #2115 from lucas-clemente/simplify-server-shutdown
simplify server shutdown
2019-09-05 15:01:38 +07:00
Marten Seemann
01bbb2b1df Merge pull request #2122 from lucas-clemente/serve-multiple-conns
implement serving multiple connections at the same time
2019-09-05 15:01:20 +07:00
Marten Seemann
a1e96b40d2 Merge pull request #2121 from lucas-clemente/remove-http-close-notifier
don't fake-implement the http.CloseNotifier interface
2019-09-05 15:00:28 +07:00
Marten Seemann
3dd3449add Merge pull request #2111 from lucas-clemente/multiplexer-multiple-conns
identify connections by their local addr when adding to the multiplexer
2019-09-05 14:48:17 +07:00
Marten Seemann
ed337ad13b Merge pull request #2119 from lucas-clemente/go-1.13
update for Go 1.13
2019-09-05 14:30:48 +07:00
Marten Seemann
5034cb2708 simplify closing of server session when the server is closed 2019-09-05 13:25:18 +07:00
Marten Seemann
717e6d5c96 implement serving multiple connections at the same time 2019-09-05 13:10:26 +07:00
Marten Seemann
93b1ff8e2c don't fake-implement the http.CloseNotifier interface 2019-09-05 11:47:46 +07:00
Marten Seemann
761b6d50f7 update CIs to Go 1.13 2019-09-05 10:08:55 +07:00
Marten Seemann
305d6e0fbe make the benchmark suite compatible with Go 1.13
Unfortunately, there doesn't seem to be a way to keep the samples flag.
2019-09-05 10:08:51 +07:00
Marten Seemann
ba1bcf6e0c use the STREAM frame buffer for receiving data 2019-09-04 16:58:44 +07:00
Marten Seemann
5ea33cd31e implement a buffer pool for STREAM frames 2019-09-04 16:55:30 +07:00