Marten Seemann
e3b34f2120
implement sending of the request body
2017-01-14 19:00:22 +07:00
Marten Seemann
6dd297379b
set EndStream header in HeadersFrame
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
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
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
a8bbe66d5c
use a better mockStream in h2quic tests
2017-01-14 18:58:40 +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
099e01f410
implement a basic request writer
2017-01-14 18:54:18 +07:00
Marten Seemann
cc153463b5
fix flaky h2quic server test
...
fixes #396
2017-01-14 18:38:04 +07:00
Marten Seemann
64bc80339e
reset streams that the request body is not read from
...
fixes #384
2017-01-09 23:47:01 +07:00
Marten Seemann
a86f31d789
implement a stream.Reset() method
...
ref #380
2017-01-09 09:49:44 +07:00
Marten Seemann
53d2290a59
only allow writing a response body for status codes that allow bodies
...
fixes #386
2017-01-07 09:49:22 +07:00
Marten Seemann
0fc42896e0
remove stray println in test
2016-12-22 14:37:55 +07:00
Lucas Clemente
facaab7ff7
properly handle non-header h2 frames on stream 3
...
fixes #370
2016-12-14 11:54:26 +01:00
Carlos Martín Nieto
327856e31c
Don't rely on GOPATH to load the certificates or error codes
...
GOPATH is a list of paths, similar to PATH. If someone does have a list
set, the tests will try to use the full list as a path prefix to load
the certificates, which won't work.
But even handling GOPATH as a list does not solve the issue of what
certificate or error_codes.go file to load, since the code might not be
under the first one it finds.
Instead, use the runtime functionality to get the filename of the path
of the project at compilation time and perform the lookups relative to
that, which guarantees that we're loading the files from the path of the
code that is running.
2016-12-02 13:52:12 +01:00
Marten Seemann
9fba032637
set empty tls.ConnectionState in HTTP request
...
fixes #342
2016-11-02 16:48:17 +07:00
Marten Seemann
76cf0a2345
concatenate Cookie HPACK headers for the HTTP request
...
fixes #338
2016-11-01 19:54:14 +02:00
Marten Seemann
bb24be8281
set http.Request.ContentLength from HPACK headers
...
fixes #337
2016-10-29 16:12:35 +07:00
Lucas Clemente
ef977ee059
make h2quic.responseWriter implement http.Flusher as NOP
...
fixes #330
2016-10-14 11:35:10 +02:00
Lucas Clemente
a6652deb2b
add a h2quic.ListenAndServe method that listens on TCP in parallel
...
fixes #327
2016-10-09 10:23:59 +02:00
Lucas Clemente
5c43a55f5d
fix a bug in h2server where tls config could be ignored
2016-10-09 10:14:38 +02:00
chestnutprog
02b50e2ffb
fix writing of multiple headers with the same name
2016-10-05 11:52:06 +02:00
Lucas Clemente
5ffc2f539d
add support for version 36
...
fixes #312
2016-09-04 23:33:31 +02:00
Lucas Clemente
e856c08645
write http headers in lower case
...
fixes #317
2016-09-04 11:38:10 +02:00
Lucas Clemente
8184ce050f
remove v33 from supported versions
2016-09-01 20:26:31 +02:00
Marten Seemann
ad91d02cbd
remove version 32 from SupportedVersions
2016-09-01 12:20:18 +02:00
Lucas Clemente
888a35c2fd
enable support for version 35
...
fixes #281
2016-08-23 17:09:53 +02:00
Lucas Clemente
29df400cc1
correctly handle panicking http.Handler
...
fixes #290
2016-08-17 18:06:57 +02:00
Lucas Clemente
a4dcf5efd7
send 200 status for requests with empty http.Handlers
...
fixes #286
2016-08-16 12:31:07 +02:00
Lucas Clemente
3b5f975e37
remove two incorrect h2quic tests
...
fixes #276
2016-08-11 12:35:13 +02:00
Lucas Clemente
081807215a
fix flaky h2quic tests
...
fixes #272
2016-08-10 18:47:25 +02:00
Lucas Clemente
8c5a3dabd6
set RemoteAddr in http request objects
...
fixes #266
2016-08-09 11:50:27 +02:00
Lucas Clemente
3e42d1da0f
fix flaky h2quic tests
...
fixes #260
2016-08-06 17:27:16 +02:00
Lucas Clemente
2097509d16
fix go vet warning
2016-08-06 14:45:11 +02:00
Lucas Clemente
c46e93c752
drop support for v31
...
fixes #214
2016-07-29 15:22:56 +02:00
Lucas Clemente
1712a7388f
drop support for v30
...
fixes #213
2016-07-29 15:22:56 +02:00
Marten Seemann
8aad920aa9
enable support for QUIC 34
...
fixes #55
2016-07-29 19:00:20 +07:00
Lucas Clemente
7ab2eb1b93
improve error message when closing a connection
...
fixes #228
2016-07-29 12:20:01 +02:00
Marten Seemann
459080a6dc
fix flaky tests on Travis
2016-06-11 13:24:28 +07:00
Marten Seemann
1491bc20f4
fix flaky tests on AppVeyor
2016-06-09 12:24:25 +07:00