Skip to content
  1. Mar 16, 2018
  2. Feb 23, 2018
  3. Feb 22, 2018
    • Francisco Sedano's avatar
      url: Add option CURLOPT_RESOLVER_START_FUNCTION · 23713645
      Francisco Sedano authored
      - Add new option CURLOPT_RESOLVER_START_FUNCTION to set a callback that
        will be called every time before a new resolve request is started
        (ie before a host is resolved) with a pointer to backend-specific
        resolver data. Currently this is only useful for ares.
      
      - Add new option CURLOPT_RESOLVER_START_DATA to set a user pointer to
        pass to the resolver start callback.
      
      Closes https://github.com/curl/curl/pull/2311
      23713645
  4. Feb 21, 2018
    • Jay Satiro's avatar
      lib: CURLOPT_HAPPY_EYEBALLS_TIMEOUT => CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS · dd027c80
      Jay Satiro authored
      - In keeping with the naming of our other connect timeout options rename
        CURLOPT_HAPPY_EYEBALLS_TIMEOUT to CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.
      
      This change adds the _MS suffix since the option expects milliseconds.
      This is more intuitive for our users since other connect timeout options
      that expect milliseconds use _MS such as CURLOPT_TIMEOUT_MS,
      CURLOPT_CONNECTTIMEOUT_MS, CURLOPT_ACCEPTTIMEOUT_MS.
      
      The tool option already uses an -ms suffix, --happy-eyeballs-timeout-ms.
      
      Follow-up to 2427d94c which added the lib and tool option yesterday.
      
      Ref: https://github.com/curl/curl/pull/2260
      dd027c80
  5. Feb 20, 2018
    • Anders Bakken's avatar
      url: Add option CURLOPT_HAPPY_EYEBALLS_TIMEOUT · 2427d94c
      Anders Bakken authored
      - Add new option CURLOPT_HAPPY_EYEBALLS_TIMEOUT to set libcurl's happy
        eyeball timeout value.
      
      - Add new optval macro CURL_HET_DEFAULT to represent the default happy
        eyeballs timeout value (currently 200 ms).
      
      - Add new tool option --happy-eyeballs-timeout-ms to expose
        CURLOPT_HAPPY_EYEBALLS_TIMEOUT. The -ms suffix is used because the
        other -timeout options in the tool expect seconds not milliseconds.
      
      Closes https://github.com/curl/curl/pull/2260
      2427d94c
  6. Feb 15, 2018
  7. Jan 30, 2018
  8. Jan 25, 2018
  9. Jan 09, 2018
  10. Jan 02, 2018
  11. Dec 22, 2017
  12. Dec 08, 2017
  13. Dec 06, 2017
  14. Dec 01, 2017
  15. Nov 27, 2017
  16. Nov 05, 2017
    • Patrick Monnerat's avatar
      HTTP: implement Brotli content encoding · 11bf1796
      Patrick Monnerat authored
      This uses the brotli external library (https://github.com/google/brotli).
      Brotli becomes a feature: additional curl_version_info() bit and
      structure fields are provided for it and CURLVERSION_NOW bumped.
      
      Tests 314 and 315 check Brotli content unencoding with correct and
      erroneous data.
      
      Some tests are updated to accomodate with the now configuration dependent
      parameters of the Accept-Encoding header.
      11bf1796
  17. Oct 08, 2017
  18. Sep 27, 2017
    • Daniel Stenberg's avatar
      curl.h: include <sys/select.h> on cygwin too · 6aa86c49
      Daniel Stenberg authored
      When building with -std=c++14 on cygwin, this header won't be
      automatically included as it otherwise is.
      
      The <sys/select.h> include decision should ideally be reversed and be
      avoided where that header file doesn't exist.
      
      Reported-by: Ian Fette
      Fixes #1925
      6aa86c49
  19. Sep 22, 2017
  20. Sep 12, 2017
  21. Sep 05, 2017
  22. Sep 04, 2017
  23. Sep 03, 2017
  24. Sep 02, 2017
    • Patrick Monnerat's avatar
      mime: new MIME API. · ce0881ed
      Patrick Monnerat authored
      Available in HTTP, SMTP and IMAP.
      Deprecates the FORM API.
      See CURLOPT_MIMEPOST.
      Lib code and associated documentation.
      ce0881ed
  25. Aug 30, 2017
  26. Aug 29, 2017
  27. Aug 28, 2017
    • Johannes Schindelin's avatar
      version: add the CURL_VERSION_MULTI_SSL feature flag · 9d96a5f0
      Johannes Schindelin authored
      
      
      This new feature flag reports When cURL was built with multiple SSL
      backends.
      
      Signed-off-by: default avatarJohannes Schindelin <johannes.schindelin@gmx.de>
      9d96a5f0
    • Johannes Schindelin's avatar
      vtls: introduce curl_global_sslset() · 1328f69d
      Johannes Schindelin authored
      
      
      Let's add a compile time safe API to select an SSL backend. This
      function needs to be called *before* curl_global_init(), and can be
      called only once.
      
      Side note: we do not explicitly test that it is called before
      curl_global_init(), but we do verify that it is not called multiple times
      (even implicitly).
      
      If SSL is used before the function was called, it will use whatever the
      CURL_SSL_BACKEND environment variable says (or default to the first
      available SSL backend), and if a subsequent call to
      curl_global_sslset() disagrees with the previous choice, it will fail
      with CURLSSLSET_TOO_LATE.
      
      The function also accepts an "avail" parameter to point to a (read-only)
      NULL-terminated list of available backends. This comes in real handy if
      an application wants to let the user choose between whatever SSL backends
      the currently available libcurl has to offer: simply call
      
      	curl_global_sslset(-1, NULL, &avail);
      
      which will return CURLSSLSET_UNKNOWN_BACKEND and populate the avail
      variable to point to the relevant information to present to the user.
      
      Just like with the HTTP/2 push functions, we have to add the function
      declaration of curl_global_sslset() function to the header file
      *multi.h* because VMS and OS/400 require a stable order of functions
      declared in include/curl/*.h (where the header files are sorted
      alphabetically). This looks a bit funny, but it cannot be helped.
      
      Signed-off-by: default avatarJohannes Schindelin <johannes.schindelin@gmx.de>
      1328f69d
    • Johannes Schindelin's avatar
      vtls: refactor out essential information about the SSL backends · b59288f8
      Johannes Schindelin authored
      
      
      There is information about the compiled-in SSL backends that is really
      no concern of any code other than the SSL backend itself, such as which
      function (if any) implements SHA-256 summing.
      
      And there is information that is really interesting to the user, such as
      the name, or the curl_sslbackend value.
      
      Let's factor out the latter into a publicly visible struct. This
      information will be used in the upcoming API to set the SSL backend
      globally.
      
      Signed-off-by: default avatarJohannes Schindelin <johannes.schindelin@gmx.de>
      b59288f8
  28. Aug 27, 2017
  29. Aug 20, 2017
  30. Aug 18, 2017