Skip to content
  1. Jun 22, 2013
  2. Apr 27, 2013
  3. Apr 12, 2013
  4. Mar 13, 2013
    • Linus Nielsen's avatar
      Multiple pipelines and limiting the number of connections. · 0f147887
      Linus Nielsen authored
      Introducing a number of options to the multi interface that
      allows for multiple pipelines to the same host, in order to
      optimize the balance between the penalty for opening new
      connections and the potential pipelining latency.
      
      Two new options for limiting the number of connections:
      
      CURLMOPT_MAX_HOST_CONNECTIONS - Limits the number of running connections
      to the same host. When adding a handle that exceeds this limit,
      that handle will be put in a pending state until another handle is
      finished, so we can reuse the connection.
      
      CURLMOPT_MAX_TOTAL_CONNECTIONS - Limits the number of connections in total.
      When adding a handle that exceeds this limit,
      that handle will be put in a pending state until another handle is
      finished. The free connection will then be reused, if possible, or
      closed if the pending handle can't reuse it.
      
      Several new options for pipelining:
      
      CURLMOPT_MAX_PIPELINE_LENGTH - Limits the pipeling length. If a
      pipeline is "full" when a connection is to be reused, a new connection
      will be opened if the CURLMOPT_MAX_xxx_CONNECTIONS limits allow it.
      If not, the handle will be put in a pending state until a connection is
      ready (either free or a pipe got shorter).
      
      CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE - A pipelined connection will not
      be reused if it is currently processing a transfer with a content
      length that is larger than this.
      
      CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE - A pipelined connection will not
      be reused if it is currently processing a chunk larger than this.
      
      CURLMOPT_PIPELINING_SITE_BL - A blacklist of hosts that don't allow
      pipelining.
      
      CURLMOPT_PIPELINING_SERVER_BL - A blacklist of server types that don't allow
      pipelining.
      
      See the curl_multi_setopt() man page for details.
      0f147887
  5. Mar 12, 2013
  6. Mar 11, 2013
  7. Mar 08, 2013
  8. Mar 07, 2013
  9. Feb 06, 2013
  10. Feb 04, 2013
  11. Jan 08, 2013
    • Yang Tse's avatar
      build: fix circular header inclusion with other packages · 5a053ffe
      Yang Tse authored
      This commit renames lib/setup.h to lib/curl_setup.h and
      renames lib/setup_once.h to lib/curl_setup_once.h.
      
      Removes the need and usage of a header inclusion guard foreign
      to libcurl. [1]
      
      Removes the need and presence of an alarming notice we carried
      in old setup_once.h [2]
      
      ----------------------------------------
      
      1 - lib/setup_once.h used __SETUP_ONCE_H macro as header inclusion guard
          up to commit ec691ca3 which changed this to HEADER_CURL_SETUP_ONCE_H,
          this single inclusion guard is enough to ensure that inclusion of
          lib/setup_once.h done from lib/setup.h is only done once.
      
          Additionally lib/setup.h has always used __SETUP_ONCE_H macro to
          protect inclusion of setup_once.h even after commit ec691ca3, this
          was to avoid a circular header inclusion triggered when building a
          c-ares enabled version with c-ares sources available which also has
          a setup_once.h header. Commit ec691ca3 exposes the real nature of
          __SETUP_ONCE_H usage in lib/setup.h, it is a header inclusion guard
          foreign to libcurl belonging to c-ares's setup_once.h
      
          The renaming this commit does, fixes the circular header inclusion,
          and as such removes the need and usage of a header inclusion guard
          foreign to libcurl. Macro __SETUP_ONCE_H no longer used in libcurl.
      
      2 - Due to the circular interdependency of old lib/setup_once.h and the
          c-ares setup_once.h header, old file lib/setup_once.h has carried
          back from 2006 up to now days an alarming and prominent notice about
          the need of keeping libcurl's and c-ares's setup_once.h in sync.
      
          Given that this commit fixes the circular interdependency, the need
          and presence of mentioned notice is removed.
      
          All mentioned interdependencies come back from now old days when
          the c-ares project lived inside a curl subdirectory. This commit
          removes last traces of such fact.
      5a053ffe
  12. Jan 06, 2013
  13. Dec 28, 2012
  14. Nov 23, 2012
    • Yang Tse's avatar
      build: fix AIX compilation and usage · 665adcd4
      Yang Tse authored
      AIX sys/poll.h header file defines 'events' and 'revents' as C
      preprocessor macros. Usage of these literals in libcurl's external
      API was introduced in commit de24d7bd causing AIX build failures.
      Appropriate inclusion of sys/poll.h by libcurl's external interface
      fixes AIX build and usage issues while avoiding a SONAME bump.
      665adcd4
  15. Nov 20, 2012
  16. Oct 10, 2012
  17. Sep 26, 2012
  18. Sep 16, 2012
  19. Sep 01, 2012
    • Sara Golemon's avatar
      multi: add curl_multi_wait() · de24d7bd
      Sara Golemon authored
      /*
       * Name:     curl_multi_wait()
       *
       * Desc:     Poll on all fds within a CURLM set as well as any
       *           additional fds passed to the function.
       *
       * Returns:  CURLMcode type, general multi error code.
       */
      CURL_EXTERN CURLMcode curl_multi_wait(CURLM *multi_handle,
                                            struct curl_waitfd extra_fds[],
                                            unsigned int extra_nfds,
                                            int timeout_ms);
      de24d7bd
  20. Aug 27, 2012
  21. Aug 16, 2012
    • Gokhan Sengun's avatar
      ftp: active conn, allow application to set sockopt after accept() call · 23ef5e4b
      Gokhan Sengun authored
      For active FTP connections, applications may need setting the sockopt after accept() call returns successful. This fix gives a call to the callback registered with CURL_SOCKOPTFUNCTION option. Also a new sock type - CURLSOCKTYPE_ACCEPT - is added. This type is to be passed to application callbacks with - purpose - parameter. Applications may use this parameter to distinguish between socket types.
      23ef5e4b
  22. Aug 08, 2012
  23. Jul 27, 2012
  24. Jun 11, 2012
    • Daniel Stenberg's avatar
      Revert: 634f7cfe partially · af0888aa
      Daniel Stenberg authored
      Make sure CURL_VERSION_SSPI is present and works as in previous releases
      for ABI and API compatibility reasons.
      af0888aa
    • Marc Hoersken's avatar
      version: Replaced SSPI feature information with version string details · 634f7cfe
      Marc Hoersken authored
      Added Windows SSPI version information to the curl version string when
      SCHANNEL SSL is not enabled, as the version of the library should also
      be included when SSPI is used to generate security contexts.
      
      Removed SSPI from the feature list as the features are GSS-Negotiate,
      NTLM and SSL depending on the usage of the SSPI library.
      634f7cfe
  25. Jun 03, 2012
  26. May 24, 2012
  27. May 22, 2012
  28. Apr 18, 2012
  29. Apr 14, 2012
  30. Apr 06, 2012
    • Yang Tse's avatar
      curl tool: use configuration files from lib directory · 919c97fa
      Yang Tse authored
      Configuration files such as curl_config.h and all config-*.h no longer exist
      nor are generated/copied into 'src' directory, now these only exist in 'lib'
      directory from where curl tool sources uses them.
      
      Additionally old src/setup.h has been refactored into src/tool_setup.h which
      now pulls lib/setup.h
      
      The possibility of a makefile needing an include path adjustment exists.
      919c97fa
  31. Apr 05, 2012
  32. Mar 23, 2012
  33. Feb 14, 2012
    • Steve Holme's avatar
      smtp_mail: Added support to MAIL FROM for the optional AUTH parameter · 0cf0ab6f
      Steve Holme authored
      Added a new CURLOPT_MAIL_AUTH option that allows the calling program to
      set the optional AUTH parameter in the MAIL FROM command.
      
      When this option is specified and an authentication mechanism is used
      to communicate with the mail server then the AUTH parameter will be
      included in the MAIL FROM command. This is particularly useful when the
      calling program is acting as a relay in a trusted environment and
      performing server to server communication, as it allows the relaying
      server to specify the address of the mailbox that was used to
      authenticate and send the original email.
      0cf0ab6f
    • Daniel Stenberg's avatar
      LIBCURL_VERSION_NUM: 0x071900 · 02012805
      Daniel Stenberg authored
      I accidentally left the lowest bits 01 before
      02012805
  34. Feb 13, 2012