- Apr 27, 2014
-
-
Tatsuhiro Tsujikawa authored
commit 6d5f40238028f2d8c (Apr 27) or later nghttp2 is now required
-
- Apr 23, 2014
-
-
Daniel Stenberg authored
This makes the findprotocol() function work as intended so that libcurl can properly be restricted to not support HTTP while still supporting HTTPS - since the HTTPS handler previously set both the HTTP and HTTPS bits in the protocol field. This fixes --proto and --proto-redir for most SSL protocols. This is done by adding a few new convenience defines that groups HTTP and HTTPS, FTP and FTPS etc that should then be used when the code wants to check for both protocols at once. PROTO_FAMILY_[protocol] style. Bug: https://github.com/bagder/curl/pull/97 Reported-by: drizzt
-
- Apr 05, 2014
-
-
Tatsuhiro Tsujikawa authored
-
- Mar 10, 2014
-
-
Tatsuhiro Tsujikawa authored
... and use Curl_safefree() instead of free()
-
- Feb 28, 2014
-
-
Tatsuhiro Tsujikawa authored
For HTTP/2, we may read up everything including responde body with header fields in Curl_http_readwrite_headers. If no content-length is provided, curl waits for the connection close, which we emulate it using conn->proto.httpc.closed = TRUE. The thing is if we read everything, then http2_recv won't be called and we cannot signal the HTTP/2 stream has closed. As a workaround, we return nonzero from data_pending to call http2_recv.
-
Daniel Stenberg authored
nghttp2 has yet again extended its callback struct and this is an attempt to make curl compile with nghttp2 from current git
-
- Feb 17, 2014
-
-
Tatsuhiro Tsujikawa authored
This patch enables HTTP POST/PUT in HTTP2. We disabled Expect header field and chunked transfer encoding since HTTP2 forbids them. In HTTP1, Curl sends small upload data with request headers, but HTTP2 requires upload data must be in DATA frame separately. So we added some conditionals to achieve this.
-
- Feb 05, 2014
-
-
Fabian Frank authored
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
-
- Feb 04, 2014
-
-
Daniel Stenberg authored
As this is mandated by the http2 spec draft-09
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
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.
-
- Jan 30, 2014
-
-
Daniel Stenberg authored
-
Daniel Stenberg authored
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
-
Daniel Stenberg authored
-
Daniel Stenberg authored
... and then go through the "normal" HTTP engine.
-
Daniel Stenberg authored
-
Daniel Stenberg authored
-
Fabian Frank authored
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().
-
Daniel Stenberg authored
To better reflect its purpose
-
- Jan 29, 2014
-
-
Daniel Stenberg authored
This makes it easier to trace what's happening.
-
Daniel Stenberg authored
-
Daniel Stenberg authored
-
Daniel Stenberg authored
-
Daniel Stenberg authored
-
Gisle Vanem authored
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).
-
Gisle Vanem authored
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.
-
Daniel Stenberg authored
-
Daniel Stenberg authored
-
- Sep 10, 2013
-
-
Daniel Stenberg authored
... instead of HTTP/2.0 to work fine with the nghttpx proxy/server.
-
- Sep 09, 2013
-
-
Daniel Stenberg authored
This function was modified in nghttp2 git commit a1c3f89c72e51
-
- Sep 07, 2013
-
-
Daniel Stenberg authored
Detected by test 1132
-
Daniel Stenberg authored
-
Daniel Stenberg authored
-
- Sep 06, 2013
-
-
Gisle Vanem authored
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:
-
- Sep 04, 2013
-
-
Daniel Stenberg authored
-
- Aug 21, 2013
-
-
Gisle Vanem authored
I build curl.exe (using MingW) with '-DCURLDEBUG' and by importing from libcurl.dll. Which means the new curl_easy_perform_ev() must be exported from libcurl.dll.
-