summary refs log tree commit diff
path: root/pkgs/tools/networking/curl
diff options
context:
space:
mode:
authorTim Steinbach <tim@nequissimus.com>2017-01-03 08:42:59 -0500
committerTim Steinbach <tim@nequissimus.com>2017-01-03 08:42:59 -0500
commit125fa1520dd5bd3255badd472cd9ce70630dc67f (patch)
tree0ca9082ce3a77c28db4962a2435a829c94c3e33f /pkgs/tools/networking/curl
parentcdf306909f3bf25fe962195c584dbe5b18ee9896 (diff)
downloadnixlib-125fa1520dd5bd3255badd472cd9ce70630dc67f.tar
nixlib-125fa1520dd5bd3255badd472cd9ce70630dc67f.tar.gz
nixlib-125fa1520dd5bd3255badd472cd9ce70630dc67f.tar.bz2
nixlib-125fa1520dd5bd3255badd472cd9ce70630dc67f.tar.lz
nixlib-125fa1520dd5bd3255badd472cd9ce70630dc67f.tar.xz
nixlib-125fa1520dd5bd3255badd472cd9ce70630dc67f.tar.zst
nixlib-125fa1520dd5bd3255badd472cd9ce70630dc67f.zip
curl: 7.51.1 -> 7.52.1
Diffstat (limited to 'pkgs/tools/networking/curl')
-rw-r--r--pkgs/tools/networking/curl/default.nix6
-rw-r--r--pkgs/tools/networking/curl/fix-http2-window-size.patch88
2 files changed, 2 insertions, 92 deletions
diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix
index 5dd523d6fa6b..9ed56ee1ec56 100644
--- a/pkgs/tools/networking/curl/default.nix
+++ b/pkgs/tools/networking/curl/default.nix
@@ -18,11 +18,11 @@ assert scpSupport -> libssh2 != null;
 assert c-aresSupport -> c-ares != null;
 
 stdenv.mkDerivation rec {
-  name = "curl-7.51.0";
+  name = "curl-7.52.1";
 
   src = fetchurl {
     url = "http://curl.haxx.se/download/${name}.tar.bz2";
-    sha256 = "1pldg1d8606p4q83k8fcp61kfcsbphln22mycw7h7r87i42410kz";
+    sha256 = "16rqhyzlpnivifin8n7l2fr9ihay9v2nw2drsniinb6bcykqaqfi";
   };
 
   outputs = [ "bin" "dev" "out" "man" "devdoc" ];
@@ -42,8 +42,6 @@ stdenv.mkDerivation rec {
     optional sslSupport openssl ++
     optional scpSupport libssh2;
 
-  patches = stdenv.lib.optional http2Support ./fix-http2-window-size.patch;
-
   # for the second line see http://curl.haxx.se/mail/tracker-2014-03/0087.html
   preConfigure = ''
     sed -e 's|/usr/bin|/no-such-path|g' -i.bak configure
diff --git a/pkgs/tools/networking/curl/fix-http2-window-size.patch b/pkgs/tools/networking/curl/fix-http2-window-size.patch
deleted file mode 100644
index 6fac3e1b42ac..000000000000
--- a/pkgs/tools/networking/curl/fix-http2-window-size.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From a4d888857ede39a8e2aa5f961048c6362d3a5377 Mon Sep 17 00:00:00 2001
-From: Jay Satiro <raysatiro@yahoo.com>
-Date: Wed, 16 Nov 2016 02:55:30 -0500
-Subject: [PATCH] http2: Use huge HTTP/2 windows
-
-- Improve performance by using a huge HTTP/2 window size.
-
-Bug: https://github.com/curl/curl/issues/1102
-Reported-by: afrind@users.noreply.github.com
-Assisted-by: Tatsuhiro Tsujikawa
----
- docs/TODO   |  8 --------
- lib/http2.c | 15 +++++++++++++--
- 2 files changed, 13 insertions(+), 10 deletions(-)
-
-diff --git a/docs/TODO b/docs/TODO
-index c3bc4eb..99c610f 100644
---- a/docs/TODO
-+++ b/docs/TODO
-@@ -63,7 +63,6 @@
-  5.1 Better persistency for HTTP 1.0
-  5.2 support FF3 sqlite cookie files
-  5.3 Rearrange request header order
-- 5.4 Use huge HTTP/2 windows
-  5.5 auth= in URLs
-  5.6 Refuse "downgrade" redirects
-  5.7 Brotli compression
-@@ -528,13 +527,6 @@ This is not detailed in any FTP specification.
-  headers use a default value so only headers that need to be moved have to be
-  specified.
- 
--5.4 Use huge HTTP/2 windows
--
-- We're currently using nghttp2's default window size which is terribly small
-- (64K). This becomes a bottle neck over high bandwidth networks. We should
-- instead make the window size to be very big (512MB?) as we really don't do
-- much flow control anyway.
--
- 5.5 auth= in URLs
- 
-  Add the ability to specify the preferred authentication mechanism to use by
-diff --git a/lib/http2.c b/lib/http2.c
-index 6720984..202ab1b 100644
---- a/lib/http2.c
-+++ b/lib/http2.c
-@@ -59,6 +59,8 @@
- #define nghttp2_session_callbacks_set_error_callback(x,y)
- #endif
- 
-+#define HTTP2_HUGE_WINDOW_SIZE (1 << 30)
-+
- /*
-  * Curl_http2_init_state() is called when the easy handle is created and
-  * allows for HTTP/2 specific init of state.
-@@ -965,7 +967,7 @@ static ssize_t data_source_read_callback(nghttp2_session *session,
-  */
- static nghttp2_settings_entry settings[] = {
-   { NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS, 100 },
--  { NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE, NGHTTP2_INITIAL_WINDOW_SIZE },
-+  { NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE, HTTP2_HUGE_WINDOW_SIZE },
- };
- 
- #define H2_BUFSIZE 32768
-@@ -2031,7 +2033,8 @@ CURLcode Curl_http2_switched(struct connectdata *conn,
-   else {
-     /* stream ID is unknown at this point */
-     stream->stream_id = -1;
--    rv = nghttp2_submit_settings(httpc->h2, NGHTTP2_FLAG_NONE, NULL, 0);
-+    rv = nghttp2_submit_settings(httpc->h2, NGHTTP2_FLAG_NONE, settings,
-+                                 sizeof(settings) / sizeof(settings[0]));
-     if(rv != 0) {
-       failf(data, "nghttp2_submit_settings() failed: %s(%d)",
-             nghttp2_strerror(rv), rv);
-@@ -2039,6 +2042,14 @@ CURLcode Curl_http2_switched(struct connectdata *conn,
-     }
-   }
- 
-+  rv = nghttp2_session_set_local_window_size(httpc->h2, NGHTTP2_FLAG_NONE, 0,
-+                                             HTTP2_HUGE_WINDOW_SIZE);
-+  if(rv != 0) {
-+    failf(data, "nghttp2_session_set_local_window_size() failed: %s(%d)",
-+          nghttp2_strerror(rv), rv);
-+    return CURLE_HTTP2;
-+  }
-+
-   /* we are going to copy mem to httpc->inbuf.  This is required since
-      mem is part of buffer pointed by stream->mem, and callbacks
-      called by nghttp2_session_mem_recv() will write stream specific