Commit Graph

3827 Commits

Author SHA1 Message Date
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
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
81be522bf3 identify connections by their local addr when adding to the multiplexer 2019-09-04 06:39:27 +07:00
Marten Seemann
d1489e5045 Merge pull request #2104 from lucas-clemente/document-http3-server-close
document that closing a http3.Server created by Serve doesn't close the conn
2019-09-04 05:34:49 +07:00
Marten Seemann
8c89e2e100 Merge pull request #2106 from lucas-clemente/fix-flaky-session-test
fix flaky session test
2019-09-04 04:28:05 +07:00
Marten Seemann
00be928873 fix flaky session test 2019-09-01 14:21:13 +07:00
Marten Seemann
d689f9a392 Merge pull request #2098 from lucas-clemente/fix-crypto-setup-close-deadlock
fix deadlock when the crypto setup is closed while qtls writes messages
2019-09-01 11:17:42 +07:00
Marten Seemann
564bd6b7ba document that closing a http3.Server created by Serve doesn't close conn 2019-09-01 11:15:01 +07:00
Marten Seemann
bcac555574 Merge pull request #2096 from lucas-clemente/stream-retransmissions
handle retransmissions for STREAM frames at each stream
2019-08-31 17:59:19 +07:00
Marten Seemann
3550aea322 Merge pull request #2099 from lucas-clemente/stateless-reset-size
rework stateless reset size
2019-08-31 17:40:09 +07:00
Marten Seemann
94ab4e8d24 cancel retransmissions for streams that were reset 2019-08-31 17:37:20 +07:00
Marten Seemann
f49451ce3c queue lost STREAM frames in the stream's retransmission queue 2019-08-31 17:36:16 +07:00
Marten Seemann
3525a51ada add an OnAcked callback to ackhandler.Frames 2019-08-31 17:34:54 +07:00
Marten Seemann
0edb3f2b93 return ackhandler.Frames from sendStream.popStreamFrame 2019-08-31 17:34:54 +07:00
Marten Seemann
e622207822 assemble ackhandler.Frames, not wire.Frames, when packing a packet 2019-08-31 17:34:54 +07:00
Marten Seemann
93d5d15e3b implement a STREAM frame retransmission queue in the sendStream 2019-08-31 17:34:54 +07:00
Marten Seemann
dd6e8a7424 Merge pull request #2095 from lucas-clemente/frame-retransmisions
retransmit frames, not packets
2019-08-31 17:34:10 +07:00
Marten Seemann
ab65e39c3b Merge pull request #2091 from lucas-clemente/request-cancelation
implement HTTP request cancelations
2019-08-31 17:32:25 +07:00
Marten Seemann
1a6d2ad0bd Merge pull request #2090 from lucas-clemente/h3-alpn-handling
rework H3 ALPN handling
2019-08-31 17:32:12 +07:00
Marten Seemann
b8c89bc905 Merge pull request #2092 from lucas-clemente/max-ack-delay-overflow
handle negative max_ack_delay values in the transport parameters
2019-08-31 17:13:40 +07:00
Marten Seemann
0063b1e945 Merge pull request #2061 from lucas-clemente/fix-ack-delay-with-non-monotonic-clock
make sure that the ACK delay time is always a positive value
2019-08-31 17:10:28 +07:00
Marten Seemann
7cd671bb8e Merge pull request #2100 from lucas-clemente/increase-early-data-handshake-timeout
increase the handshake timeout in the early data integration test
2019-08-31 17:04:35 +07:00
Marten Seemann
e35d845335 Merge pull request #2101 from lucas-clemente/stop-sending-error-code
copy error code from the STOP_SENDING frame to the RESET_STREAM frame
2019-08-31 17:04:08 +07:00
Marten Seemann
2836442a65 copy error code from the STOP_SENDING frame to the RESET_STREAM frame 2019-08-31 12:51:02 +07:00
Marten Seemann
709c0dbb7e increase the handshake timeout in the early data integration test 2019-08-31 12:41:42 +07:00
Marten Seemann
d02fd5178a adjust the minimum size for stateless resets to the new header format 2019-08-31 12:33:53 +07:00
Marten Seemann
96db15c836 accept smaller stateless resets 2019-08-31 12:31:41 +07:00
Marten Seemann
e224768e46 fix deadlock when the crypto setup is closed while qtls writes messages 2019-08-31 11:59:44 +07:00
Marten Seemann
1d392b4276 retransmit frames instead of packets 2019-08-29 15:00:10 +07:00
Marten Seemann
515c21dd1d simplify splitting of STREAM frames 2019-08-29 11:15:59 +07:00
Marten Seemann
5fa38a83fa remove tracking of which packet is retransmission of which other packet 2019-08-26 14:38:37 +07:00
Marten Seemann
a3d6f08074 move the ackhandler.Packet to the ackhandler interface file 2019-08-26 09:55:42 +07:00
Marten Seemann
2329d0e21e handle negative max_ack_delay values in the transport parameters 2019-08-25 16:15:34 +07:00
Marten Seemann
f1d14ecdea Merge pull request #2042 from lucas-clemente/token-cache
implement a store for address validation tokes
2019-08-25 14:02:16 +07:00
Marten Seemann
48f5a18b2c Merge pull request #2081 from lucas-clemente/send-queue
implement a send queue to send packet asynchronously
2019-08-24 16:46:32 +07:00
Marten Seemann
00c19f7241 implement a send queue to send packet asynchronously 2019-08-24 15:25:38 +07:00
Marten Seemann
328dd2c848 set the H3 ALPN on tls.Configs returned by GetConfigForClient 2019-08-24 15:23:37 +07:00
Marten Seemann
fd30146de5 replace the list of ALPN instead of appending to it in http3 2019-08-24 15:22:36 +07:00
Marten Seemann
e3e2851c24 add an integration test for HTTP request cancelations 2019-08-24 15:16:10 +07:00
Marten Seemann
f4621e280e remove stray TODO in the HTTP/3 client 2019-08-24 10:41:41 +07:00
Marten Seemann
0a298f2aef implement client-side request cancelations 2019-08-24 09:47:49 +07:00
Marten Seemann
4247c2f06d Merge pull request #2087 from lucas-clemente/fuzz-frames
fuzz the frame parser
2019-08-24 09:05:33 +07:00
Marten Seemann
1ff6c04bdd add .gitignore entries for fuzzing 2019-08-24 08:54:56 +07:00
Marten Seemann
20557738a0 fuzz the frame parser 2019-08-24 08:54:56 +07:00