History log of /curl/lib/multiif.h (Results 51 – 65 of 65)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: curl-7_30_0
# 0f147887 15-Feb-2013 Linus Nielsen Feltzing

Multiple pipelines and limiting the number of connections.

Introducing a number of options to the multi interface that
allows for multiple pipelines to the same host, in order to
opt

Multiple pipelines and limiting the number of connections.

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.

show more ...


Revision tags: curl-7_29_0
# 4a5aa668 04-Jan-2013 Yang Tse

Revert changes relative to lib/*.[ch] recent renaming

This reverts renaming and usage of lib/*.h header files done
28-12-2012, reverting 2 commits:

f871de0... build: make use

Revert changes relative to lib/*.[ch] recent renaming

This reverts renaming and usage of lib/*.h header files done
28-12-2012, reverting 2 commits:

f871de0... build: make use of 76 lib/*.h renamed files
ffd8e12... build: rename 76 lib/*.h files

This also reverts removal of redundant include guard (redundant thanks
to changes in above commits) done 2-12-2013, reverting 1 commit:

c087374... curl_setup.h: remove redundant include guard

This also reverts renaming and usage of lib/*.c source files done
3-12-2013, reverting 3 commits:

13606bb... build: make use of 93 lib/*.c renamed files
5b6e792... build: rename 93 lib/*.c files
7d83dff... build: commit 13606bbfde follow-up 1

Start of related discussion thread:

http://curl.haxx.se/mail/lib-2013-01/0012.html

Asking for confirmation on pushing this revertion commit:

http://curl.haxx.se/mail/lib-2013-01/0048.html

Confirmation summary:

http://curl.haxx.se/mail/lib-2013-01/0079.html

NOTICE: The list of 2 files that have been modified by other
intermixed commits, while renamed, and also by at least one
of the 6 commits this one reverts follows below. These 2 files
will exhibit a hole in history unless git's '--follow' option
is used when viewing logs.

lib/curl_imap.h
lib/curl_smtp.h

show more ...


# ec691ca3 28-Dec-2012 Yang Tse

lib/*.h: use our standard naming scheme for header inclusion guards


Revision tags: curl-7_28_1, curl-7_28_0, curl-7_27_0, curl-7_26_0, curl-7_25_0, curl-7_24_0, curl-7_23_1, curl-7_23_0, curl-7_22_0, curl-7_21_7, curl-7_21_6, curl-7_21_5, curl-7_21_4, curl-7_21_3, curl-7_21_2, curl-7_21_1
# 232ad654 10-Aug-2010 Daniel Stenberg

multi: support timeouts

Curl_expire() is now expanded to hold a list of timeouts for each easy
handle. Only the closest in time will be the one used as the primary
timeout for the ha

multi: support timeouts

Curl_expire() is now expanded to hold a list of timeouts for each easy
handle. Only the closest in time will be the one used as the primary
timeout for the handle and will be used for the splay tree (which sorts
and lists all handles within the multi handle).

When the main timeout has triggered/expired, the next timeout in time
that is kept in the list will be moved to the main timeout position and
used as the key to splay with. This way, all timeouts that are set with
Curl_expire() internally will end up as a proper timeout. Previously any
Curl_expire() that set a _later_ timeout than what was already set was
just silently ignored and thus missed.

Setting Curl_expire() with timeout 0 (zero) will cancel all previously
added timeouts.

Corrects known bug #62.

show more ...


Revision tags: curl-7_21_0, curl-7_20_1
# 2309b4e3 24-Mar-2010 Daniel Stenberg

remove the CVSish $Id$ lines


Revision tags: curl-7_20_0, curl-7_19_7, curl-7_19_6
# 2c166812 10-Jun-2009 Yang Tse

Adjusted to take in account that...

With the curl memory tracking feature decoupled from the debug build feature,
CURLDEBUG and DEBUGBUILD preprocessor symbol definitions are used as fol

Adjusted to take in account that...

With the curl memory tracking feature decoupled from the debug build feature,
CURLDEBUG and DEBUGBUILD preprocessor symbol definitions are used as follows:

CURLDEBUG used for curl debug memory tracking specific code (--enable-curldebug)

DEBUGBUILD used for debug enabled specific code (--enable-debug)

show more ...


Revision tags: curl-7_19_5, curl-7_19_4, curl-7_19_3, curl-7_19_2, curl-7_19_1
# f591ab3b 13-Sep-2008 Yang Tse

fix compiler warning: defined but not used


Revision tags: curl-7_19_0, curl-7_18_2, curl-7_18_1, curl-7_18_0, curl-7_17_1, curl-7_17_0
# 52376766 26-Aug-2007 Dan Fandrich

Fixed some minor mismatched types found by splint.


Revision tags: curl-7_17_0-preldapfix, curl-7_16_4, curl-7_16_3, curl-7_16_2
# 5daa6b93 10-Apr-2007 Daniel Stenberg

Ravi Pratap provided fixes for HTTP pipelining


Revision tags: curl-7_16_1, curl-7_16_0
# ae13c93b 28-Sep-2006 Daniel Stenberg

Reported in #1561470 (http://curl.haxx.se/bug/view.cgi?id=1561470), libcurl
would crash if a bad function sequence was used when shutting down after
using the multi interface (i.e using easy_

Reported in #1561470 (http://curl.haxx.se/bug/view.cgi?id=1561470), libcurl
would crash if a bad function sequence was used when shutting down after
using the multi interface (i.e using easy_cleanup after multi_cleanup) so
precautions have been added to make sure it doesn't any more - test case 529
was added to verify.

show more ...


# b7eeb6e6 07-Sep-2006 Daniel Stenberg

Major overhaul introducing http pipelining support and shared connection
cache within the multi handle.


Revision tags: curl-7_15_6-prepipeline, curl-7_15_5, curl-7_15_4
# 686d9074 10-Apr-2006 Daniel Stenberg

First curl_multi_socket() commit. Should primarily be considered as an internal
code rearrange to fit the future better.


Revision tags: curl-7_15_3, curl-7_15_2, curl-7_15_1, curl-7_15_0, curl-7_14_1, c-ares-1_3_0, curl-7_14_0, curl-7_13_2
# ab4086bc 31-Mar-2005 Daniel Stenberg

Updated the copyright year since changes have been this year.


Revision tags: curl-7_13_1
# 6a2e21ec 09-Feb-2005 Daniel Stenberg

FTP code turned into state machine. Not completely yet, but a good start.
The tag 'before_ftp_statemachine' was set just before this commit in case
of future need.


Revision tags: before_ftp_statemachine, curl-7_13_0
# e3fa7d02 11-Jan-2005 Daniel Stenberg

Renamed easy.h and multi.h to easyif.h and multiif.h to make sure they don't
shadow our public headers with the former names.


123