Marten Seemann
|
713df41c8b
|
verify certificates using a client TLS config, if given
ref #407
|
2017-02-03 15:46:38 +07:00 |
|
Marten Seemann
|
b455f3ee6a
|
fix flaky h2quic server test
|
2017-02-02 15:34:46 +07:00 |
|
Marten Seemann
|
90983470e8
|
fix logging of REJs and SHLOs
|
2017-02-02 14:16:46 +07:00 |
|
Marten Seemann
|
1800e47607
|
update CIs to Go 1.7.5
|
2017-01-28 23:15:03 +09:00 |
|
Marten Seemann
|
7e0cb8072b
|
don’t panic if a request handler replaces the request.Body
fixes #405
|
2017-01-28 23:00:34 +09:00 |
|
Marten Seemann
|
dfa0137bd6
|
close the connection when encountering an error on the header stream
fixes #403
|
2017-01-26 14:12:50 +09:00 |
|
Marten Seemann
|
86e02c4d2c
|
use cryptographic random to generate new connection IDs
fixes #348
|
2017-01-18 14:19:53 +07:00 |
|
Marten Seemann
|
d5ec70fc7d
|
Merge pull request #399 from lucas-clemente/wip-client
implement a QUIC client
|
2017-01-18 14:04:36 +07:00 |
|
Marten Seemann
|
68c8bb27b9
|
update README
|
2017-01-18 13:07:21 +07:00 |
|
Marten Seemann
|
f286ba3d36
|
fix error code when there are no common version in version negotiation
|
2017-01-18 10:22:04 +07:00 |
|
Marten Seemann
|
16448cb2db
|
run client integration tests with every QUIC version
|
2017-01-16 16:34:50 +07:00 |
|
Marten Seemann
|
7284a74332
|
fix another flaky h2quic client test
|
2017-01-16 16:23:34 +07:00 |
|
Marten Seemann
|
99bc18efd8
|
explicitly fail tests if name resolution fails
|
2017-01-16 15:28:59 +07:00 |
|
Marten Seemann
|
06aa2489ba
|
add an integration test for uploading data with the client
|
2017-01-16 15:23:23 +07:00 |
|
Marten Seemann
|
f08e00630d
|
fix flaky h2quic client test
|
2017-01-16 12:22:03 +07:00 |
|
Marten Seemann
|
1eeb249876
|
add more integration tests for downloading data with the client
|
2017-01-16 10:38:58 +07:00 |
|
Marten Seemann
|
cdcb4163c0
|
add a simple integration test for the client
|
2017-01-16 10:35:59 +07:00 |
|
Marten Seemann
|
c71e8cfb25
|
log sent CHLOs
|
2017-01-14 19:00:24 +07:00 |
|
Marten Seemann
|
82f2298658
|
fix race condition in client crypto setup
|
2017-01-14 19:00:23 +07:00 |
|
Marten Seemann
|
e3b34f2120
|
implement sending of the request body
|
2017-01-14 19:00:22 +07:00 |
|
Marten Seemann
|
cc97a2fba4
|
print request body in example client
|
2017-01-14 18:58:47 +07:00 |
|
Marten Seemann
|
6dd297379b
|
set EndStream header in HeadersFrame
|
2017-01-14 18:58:47 +07:00 |
|
Marten Seemann
|
db09de621c
|
detect version downgrade attacks in the client crypto setup
|
2017-01-14 18:58:47 +07:00 |
|
Marten Seemann
|
b52204322f
|
don’t modify version slice when finding the highest supported version
will be needed for detecting version downgrade attacks
|
2017-01-14 18:58:47 +07:00 |
|
Marten Seemann
|
1854279bb5
|
reject requests with an invalid request method
|
2017-01-14 18:58:46 +07:00 |
|
Marten Seemann
|
feec325083
|
validate HTTP headers and request scheme in RoundTripper
|
2017-01-14 18:58:46 +07:00 |
|
Marten Seemann
|
1061bd4492
|
reject requests with missing URL or Header in the RoundTripper
|
2017-01-14 18:58:46 +07:00 |
|
Marten Seemann
|
53706049c7
|
read connection parameters when receiving a SHLO
|
2017-01-14 18:58:46 +07:00 |
|
Marten Seemann
|
a587af079d
|
improve the connection parameters manager for the client
|
2017-01-14 18:58:46 +07:00 |
|
Marten Seemann
|
64c4bede3e
|
remove unnecessary loop from connection parameters manager
|
2017-01-14 18:58:45 +07:00 |
|
Marten Seemann
|
128bad04e5
|
add option to disable compresson to QuicRoundTripper
|
2017-01-14 18:58:45 +07:00 |
|
Marten Seemann
|
d028624f77
|
implement compressed requests and responses
|
2017-01-14 18:58:45 +07:00 |
|
Marten Seemann
|
edb34b1765
|
close the quic client on protocol errors in h2quic client
|
2017-01-14 18:58:45 +07:00 |
|
Marten Seemann
|
44271a8ec8
|
fix mutexes for writing requests in h2quic client
|
2017-01-14 18:58:45 +07:00 |
|
Marten Seemann
|
9790418eb7
|
only close the client once
|
2017-01-14 18:58:44 +07:00 |
|
Marten Seemann
|
ad7de3c99d
|
fix flaky client test
|
2017-01-14 18:58:44 +07:00 |
|
Marten Seemann
|
6ece13f9ab
|
add a better example client
|
2017-01-14 18:58:44 +07:00 |
|
Marten Seemann
|
40a6577dc3
|
implement a basic QUIC RoundTripper
|
2017-01-14 18:58:44 +07:00 |
|
Marten Seemann
|
c547ced3ce
|
correctly read the hostname from a http.Request
|
2017-01-14 18:58:44 +07:00 |
|
Marten Seemann
|
14135798c0
|
compose a http.Response in h2quic client
|
2017-01-14 18:58:44 +07:00 |
|
Marten Seemann
|
0401b12f8a
|
handle the header stream in the h2quic client
|
2017-01-14 18:58:43 +07:00 |
|
Marten Seemann
|
08c267431b
|
implement closing the quic client with an error
|
2017-01-14 18:58:43 +07:00 |
|
Marten Seemann
|
c42262c2b3
|
implement a h2quic client that can send H2 requests
|
2017-01-14 18:58:43 +07:00 |
|
Marten Seemann
|
b9f9c2e429
|
save correct hostname in quic Client
|
2017-01-14 18:58:43 +07:00 |
|
Marten Seemann
|
3458514744
|
add a method to open new Streams to the client
|
2017-01-14 18:58:43 +07:00 |
|
Marten Seemann
|
a8bbe66d5c
|
use a better mockStream in h2quic tests
|
2017-01-14 18:58:40 +07:00 |
|
Marten Seemann
|
a7afd72795
|
add a callback that is called when the crypto level changes
|
2017-01-14 18:54:18 +07:00 |
|
Marten Seemann
|
4130c3de32
|
send priority in H2 request headers
is required by Google’s QUIC implementation
|
2017-01-14 18:54:18 +07:00 |
|
Marten Seemann
|
dc05de3312
|
add a callback to client that is called after the version is negotiated
|
2017-01-14 18:54:18 +07:00 |
|
Marten Seemann
|
2377b3a111
|
fix detection when the QUIC version is negotiated
|
2017-01-14 18:54:18 +07:00 |
|