Skip to content
  1. Sep 05, 2016
  2. Sep 04, 2016
    • Olivier Brunel's avatar
      speed caps: not based on average speeds anymore · 4b86113f
      Olivier Brunel authored
      Speed limits (from CURLOPT_MAX_RECV_SPEED_LARGE &
      CURLOPT_MAX_SEND_SPEED_LARGE) were applied simply by comparing limits
      with the cumulative average speed of the entire transfer; While this
      might work at times with good/constant connections, in other cases it
      can result to the limits simply being "ignored" for more than "short
      bursts" (as told in man page).
      
      Consider a download that goes on much slower than the limit for some
      time (because bandwidth is used elsewhere, server is slow, whatever the
      reason), then once things get better, curl would simply ignore the limit
      up until the average speed (since the beginning of the transfer) reached
      the limit.  This could prove the limit useless to effectively avoid
      using the entire bandwidth (at least for quite some time).
      
      So instead, we now use a "moving starting point" as reference, and every
      time at least as much as the limit as been transferred, we can reset
      this starting point to the current position. This gets a good limiting
      effect that applies to the "current speed" with instant reactivity (in
      case of sudden speed burst).
      
      Closes #971
      4b86113f
  3. Sep 03, 2016
  4. Sep 01, 2016
  5. Aug 31, 2016
  6. Aug 30, 2016
  7. Aug 29, 2016
  8. Aug 28, 2016
  9. Aug 27, 2016
  10. Aug 26, 2016
  11. Aug 25, 2016
  12. Aug 23, 2016
    • Ales Novak's avatar
      ftp: fix wrong poll on the secondary socket · 7ad50a61
      Ales Novak authored
      
      
      When we're uploading using FTP and the server issues a tiny pause
      between opening the connection to the client's secondary socket, the
      client's initial poll() times out, which leads to second poll() which
      does not wait for POLLIN on the secondary socket. So that poll() also
      has to time out, creating a long (200ms) pause.
      
      This patch adds the correct flag to the secondary socket, making the
      second poll() correctly wait for the connection there too.
      
      Signed-off-by: default avatarAles Novak <alnovak@suse.cz>
      
      Closes #978
      7ad50a61
  13. Aug 22, 2016
  14. Aug 21, 2016