Age | Commit message (Collapse) | Author | |
---|---|---|---|
2014-02-05 | http2: rely on content-encoding header | Fabian Frank | |
A server might respond with a content-encoding header and a response that was encoded accordingly in HTTP-draft-09/2.0 mode, even if the client did not send an accept-encoding header earlier. The server might not send a content-encoding header if the identity encoding was used to encode the response. See: http://tools.ietf.org/html/draft-ietf-httpbis-http2-09#section-9.3 | |||
2014-02-04 | http2: enforce gzip auto-decompress | Daniel Stenberg | |
As this is mandated by the http2 spec draft-09 | |||
2014-02-04 | http2: handle incoming data larger than remaining buffer | Tatsuhiro Tsujikawa | |
2014-02-04 | http2: Check stream ID we are interested in | Tatsuhiro Tsujikawa | |
2014-02-04 | http2: store response header in temporary buffer | Tatsuhiro Tsujikawa | |
2014-02-04 | HTTP2: add layer between existing http and socket(TLS) layer | Tatsuhiro Tsujikawa | |
This patch chooses different approach to integrate HTTP2 into HTTP curl stack. The idea is that we insert HTTP2 layer between HTTP code and socket(TLS) layer. When HTTP2 is initialized (either in NPN or Upgrade), we replace the Curl_recv/Curl_send callbacks with HTTP2's, but keep the original callbacks in http_conn struct. When sending serialized data by nghttp2, we use original Curl_send callback. Likewise, when reading data from network, we use original Curl_recv callback. In this way we can treat both TLS and non-TLS connections. With this patch, one can transfer contents from https://twitter.com and from nghttp2 test server in plain HTTP as well. The code still has rough edges. The notable one is I could not figure out how to call nghttp2_session_send() when underlying socket is writable. | |||
2014-01-30 | http2: fix size check in on_data_chunk_recv | Daniel Stenberg | |
2014-01-30 | http2: add CRLF when first data arrives | Daniel Stenberg | |
2014-01-30 | http2_recv: Return written length on CURLE_AGAIN | Tatsuhiro Tsujikawa | |
2014-01-30 | http2: Use nghttp2_session_mem_recv and nghttp2_session_upgrade | Tatsuhiro Tsujikawa | |
2014-01-30 | http2: basic version of receiving DATA | Daniel Stenberg | |
2014-01-30 | http2: convert HEADER frames to HTTP1-like headers | Daniel Stenberg | |
... and then go through the "normal" HTTP engine. | |||
2014-01-30 | http2: fix EWOULDBLOCK in recv_callback() | Daniel Stenberg | |
2014-01-30 | http2: do the POST Upgrade dance properly | Daniel Stenberg | |
2014-01-30 | http2: switch into http2 mode if NPN indicates | Fabian Frank | |
Check the NPN result before preparing an HTTP request and switch into HTTP/2.0 mode if necessary. This is a work in progress, the actual code to prepare and send the request using nghttp2 is still missing from Curl_http2_send_request(). | |||
2014-01-30 | http2: s/Curl_http2_request/Curl_http2_request_upgrade | Daniel Stenberg | |
To better reflect its purpose | |||
2014-01-30 | http2: added stubs for all nghttp2 callbacks | Daniel Stenberg | |
This makes it easier to trace what's happening. | |||
2014-01-29 | http2: use FIRSTSOCKET instead of 0 to index the sockets array | Daniel Stenberg | |
2014-01-29 | http2: receive and log the received header frames | Daniel Stenberg | |
2014-01-29 | http2_recv: log nghttp2 return codes for debugging purposes | Daniel Stenberg | |
2014-01-29 | HTTP2: reject nghttp2 versions before 0.3.0 | Daniel Stenberg | |
2014-01-29 | http2: adjusted to newer nghttp2_session_callbacks struct | Gisle Vanem | |
the number of elements in the 'nghttp2_session_callbacks' structure is now reduced by 2 in version 0.3.0 (I'm not sure when the change happened, but checking for ver 0.3.0 work for me). | |||
2014-01-29 | HTTP2: Wrong NgHTTP2 user-data | Gisle Vanem | |
Something is wrong in 'userp' for the HTTP2 recv_callback(). The session is created using bogus user-data; '&conn' and not 'conn'. I noticed this since the socket-value in Curl_read_plain() was set to a impossible high value. | |||
2014-01-29 | http2: switch recv/send functions to http2 ones after 101 | Daniel Stenberg | |
2014-01-29 | http2: handle 101 responses and switch to HTTP2 | Daniel Stenberg | |
2013-09-10 | http2: use the support HTTP2 draft version in the upgrade header | Daniel Stenberg | |
... instead of HTTP/2.0 to work fine with the nghttpx proxy/server. | |||
2013-09-09 | http2: adjust to new nghttp2_pack_settings_payload proto | Daniel Stenberg | |
This function was modified in nghttp2 git commit a1c3f89c72e51 | |||
2013-09-07 | http2: include curl_memory.h | Daniel Stenberg | |
Detected by test 1132 | |||
2013-09-07 | http2: actually init nghttp2 and send HTTP2-Settings properly | Daniel Stenberg | |
2013-09-07 | http2: first embryo toward Upgrade: | Daniel Stenberg | |
2013-09-06 | http2: use correct include for snprintf | Gisle Vanem | |
Using the first little merge of nghttp2 into libcurl, I stumbeled on the missing 'snprintf' in MSVCRT. Isn't this how we do it for other libcurl files? I.e. use 'curl_msnprintf' and not 'snprintf' directly: | |||
2013-09-04 | http2: add http2.[ch] and add nghttp2 version output | Daniel Stenberg | |