Marten Seemann
683230372e
use a buffered writer for the http3 response writer
2020-04-02 15:15:29 +07:00
Marten Seemann
43dfc7281f
update H3 and hq to -27
2020-03-01 12:22:07 +07:00
Marten Seemann
3b1e6118da
Merge pull request #2371 from lorenzosaino/fix-http3-client-close
...
Make http3.client.Close() succeed if session was not started
2020-02-28 12:00:50 +07:00
Marten Seemann
a44c81e210
fix race condition when creating the logger for the HTTP/3 server
2020-02-25 16:09:19 +07:00
Marten Seemann
383adb619c
fix flaky HTTP/3 Server unit test
2020-02-24 16:19:37 +07:00
Marten Seemann
215ca4c155
remove stray GinkgoRecover() in http3.Server
2020-02-23 09:43:40 +07:00
Lorenzo Saino
8db2288382
Make http3.client.Close() succeed if session was not started
...
Invoking http3.client.Close() before client.dial() is invoked
causes a segmentation fault. That occurs because, in this
circumstance, invoking client.Close() results in invoking
client.session.CloseWithError(...) while client.session is nil.
This commit changes the behavior of
http3.client.Close() to return nil if client.session
is nil and adds an associated test case.
2020-02-23 00:21:19 +00:00
phuslu
6de97fce55
Add LocalAddrContextKey/ServerContextKey to http3 request context
2020-02-01 20:36:13 +08:00
Marten Seemann
950f278362
accept 0-RTT request in the http3 server
2020-01-29 11:34:08 +07:00
Marten Seemann
91543322f6
define a new Method for 0-RTT GET requests on the http.Request
2020-01-29 11:34:06 +07:00
Marten Seemann
af1e8f4c78
handle request cancelations while waiting for handshake completion
2020-01-29 11:25:29 +07:00
Marten Seemann
1372e5dd5e
use 0-RTT to open the H3 client's control stream
2020-01-29 11:06:44 +07:00
Marten Seemann
bc25840519
use 0.5-RTT data to open the control stream in the http3 server
2020-01-29 10:40:06 +07:00
Marten Seemann
2bac900862
Merge pull request #2319 from lucas-clemente/fix-stream-open-request-cancelation
...
use the HTTP request context when opening the request stream
2020-01-29 00:08:43 +07:00
Marten Seemann
a5120204cc
use H3_NO_ERROR when closing the http3.Client
2020-01-26 17:37:22 +07:00
Marten Seemann
d2209ba553
use the HTTP request context when opening the request stream
2020-01-26 11:33:22 +07:00
Marin
44cc47a887
set remote address on http request
2020-01-14 13:30:26 +01:00
Marten Seemann
27549c5665
use the minimum of the two peers' max_idle_timeouts
2019-12-11 14:04:33 +04:00
Marten Seemann
e08b6b37c4
update the H3 ALPN to draft-24
2019-12-04 08:39:06 +07:00
Marten Seemann
b444ca613c
don't replace the ALPN in the tls.Config returned by GetConfigForClient
2019-11-09 17:26:52 +07:00
Marten Seemann
672328ca30
Merge pull request #2184 from lucas-clemente/http3-read-frame-error
...
close the connection on unexpected frames when reading a HTTP/3 body
2019-10-26 06:47:37 +07:00
Marten Seemann
fe6cda98eb
close the connection on unexpected frames when reading a HTTP/3 body
2019-10-25 09:39:40 +07:00
Marten Seemann
4719852db6
remove HTTP/3 PRIORITY frame
2019-10-25 09:00:46 +07:00
Marten Seemann
ea0050e2a2
update HTTP/3 errors
...
* rename HTTP_UNEXPECTED_FRAME to HTTP_FRAME_UNEXPECTED
* remove the HTTP_WRONG_STREAM error
* rename errors from HTTP_ to H3_
2019-10-23 09:43:47 +07:00
Julien Salleyron
f110af917b
Remove QUIC version hint
2019-10-21 17:18:02 +02:00
Marten Seemann
2ef8429ce1
Merge pull request #2166 from juliens/alt-svc
...
Fix Alt-Svc header
2019-10-14 05:17:25 +07:00
Julien Salleyron
3c08c885ae
Handle new version format
2019-10-13 22:50:53 +02:00
Marten Seemann
772cf9facd
fix flaky HTTP/3 client unit test
2019-10-13 06:14:49 -07:00
Julien Salleyron
ff89d42262
Fix alt-svc header
2019-10-12 19:07:16 +02:00
Marten Seemann
393695d774
fix flaky HTTP/3 client unit test
2019-10-01 10:14:21 +07:00
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
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
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
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
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
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
f9bbac8b04
update HTTP/3 errors
2019-09-04 12:06:17 +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
ab65e39c3b
Merge pull request #2091 from lucas-clemente/request-cancelation
...
implement HTTP request cancelations
2019-08-31 17:32:25 +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
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
f0a62c05df
Merge pull request #2085 from lucas-clemente/harden-http3
...
check the size of HTTP3 HEADERS frames before allocating
2019-08-23 23:18:54 +07:00
Marten Seemann
363de010ca
reject http3 responses that exceeded the header size limit
2019-08-22 12:08:02 +07:00
Marten Seemann
9294652ecc
reject http3 requests that exceeded the header size limit
2019-08-22 10:23:51 +07:00
Marten Seemann
39e29d8364
fix closing of http.Response and http.Request bodies
2019-08-21 16:30:02 +07:00