#
21aa32d3 |
| 18-Nov-2016 |
Marcel Raad |
lib: fix compiler warnings after de4de4e3c7c Visual C++ now complains about implicitly casting time_t (64-bit) to long (32-bit). Fix this by changing some variables from long to time_t,
lib: fix compiler warnings after de4de4e3c7c Visual C++ now complains about implicitly casting time_t (64-bit) to long (32-bit). Fix this by changing some variables from long to time_t, or explicitly casting to long where the public interface would be affected. Closes #1131
show more ...
|
Revision tags: curl-7_51_0, curl-7_50_3, curl-7_50_2, curl-7_50_1, curl-7_50_0 |
|
#
434f8d03 |
| 21-Jun-2016 |
Daniel Stenberg |
internals: rename the SessionHandle struct to Curl_easy
|
#
608d161b |
| 07-Jun-2016 |
Luo Jinghua |
resolve: enable protocol family logic for synthesized IPv6 - Enable protocol family logic for IPv6 resolves even when support for synthesized addresses is enabled. This is a fol
resolve: enable protocol family logic for synthesized IPv6 - Enable protocol family logic for IPv6 resolves even when support for synthesized addresses is enabled. This is a follow up to the parent commit that added support for synthesized IPv6 addresses from IPv4 on iOS/OS X. The protocol family logic needed for IPv6 was inadvertently excluded if support for synthesized addresses was enabled. Bug: https://github.com/curl/curl/issues/863 Ref: https://github.com/curl/curl/pull/866 Ref: https://github.com/curl/curl/pull/867
show more ...
|
#
01a49a76 |
| 07-Jun-2016 |
Luo Jinghua |
resolve: add support for IPv6 DNS64/NAT64 Networks on OS X + iOS Use getaddrinfo() to resolve the IPv4 address literal on iOS/Mac OS X. If the current network interface doesn’t support I
resolve: add support for IPv6 DNS64/NAT64 Networks on OS X + iOS Use getaddrinfo() to resolve the IPv4 address literal on iOS/Mac OS X. If the current network interface doesn’t support IPv4, but supports IPv6, NAT64, and DNS64. Closes #866 Fixes #863
show more ...
|
Revision tags: curl-7_49_1, curl-7_49_0 |
|
#
4f45240b |
| 29-Apr-2016 |
Daniel Stenberg |
lib: include curl_printf.h as one of the last headers curl_printf.h defines printf to curl_mprintf, etc. This can cause problems with external headers which may use __attribute__((fo
lib: include curl_printf.h as one of the last headers curl_printf.h defines printf to curl_mprintf, etc. This can cause problems with external headers which may use __attribute__((format(printf, ...))) markers etc. To avoid that they cause problems with system includes, we include curl_printf.h after any system headers. That makes the three last headers to always be, and we keep them in this order: curl_printf.h curl_memory.h memdebug.h None of them include system headers, they all do funny #defines. Reported-by: David Benjamin Fixes #743
show more ...
|
Revision tags: curl-7_48_0, curl-7_47_1 |
|
#
4af40b36 |
| 02-Feb-2016 |
Daniel Stenberg |
URLs: change all http:// URLs to https://
|
Revision tags: curl-7_47_0, curl-7_46_0, curl-7_45_0, curl-7_44_0, curl-7_43_0, curl-7_42_1, curl-7_42_0 |
|
#
93959995 |
| 17-Mar-2015 |
Daniel Stenberg |
checksrc: use space after comma
|
#
0f4a03cb |
| 16-Mar-2015 |
Daniel Stenberg |
free: instead of Curl_safefree() Since we just started make use of free(NULL) in order to simplify code, this change takes it a step further and: - converts lots of Curl_safefre
free: instead of Curl_safefree() Since we just started make use of free(NULL) in order to simplify code, this change takes it a step further and: - converts lots of Curl_safefree() calls to good old free() - makes Curl_safefree() not check the pointer before free() The (new) rule of thumb is: if you really want a function call that frees a pointer and then assigns it to NULL, then use Curl_safefree(). But we will prefer just using free() from now on.
show more ...
|
#
29c655c0 |
| 11-Mar-2015 |
Markus Elfring |
Bug #149: Deletion of unnecessary checks before calls of the function "free" The function "free" is documented in the way that no action shall occur for a passed null pointer. It is ther
Bug #149: Deletion of unnecessary checks before calls of the function "free" The function "free" is documented in the way that no action shall occur for a passed null pointer. It is therefore not needed that a function caller repeats a corresponding check. http://stackoverflow.com/questions/18775608/free-a-null-pointer-anyway-or-check-first This issue was fixed by using the software Coccinelle 1.0.0-rc24. Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
show more ...
|
#
df5578a7 |
| 03-Mar-2015 |
Daniel Stenberg |
mprintf.h: remove #ifdef CURLDEBUG ... and as a consequence, introduce curl_printf.h with that re-define magic instead and make all libcurl code use that instead.
|
Revision tags: curl-7_41_0, curl-7_40_0 |
|
#
151ae594 |
| 27-Dec-2014 |
Steve Holme |
code/docs: Use correct case for IPv4 and IPv6 For consistency, as we seem to have a bit of a mixed bag, changed all instances of ipv4 and ipv6 in comments and documentations to use the
code/docs: Use correct case for IPv4 and IPv6 For consistency, as we seem to have a bit of a mixed bag, changed all instances of ipv4 and ipv6 in comments and documentations to use the correct case.
show more ...
|
#
4d2c539b |
| 14-Dec-2014 |
Steve Holme |
asyn-thread: We prefer 'CURLcode result'
|
Revision tags: curl-7_39_0 |
|
#
d9762a7c |
| 23-Sep-2014 |
Daniel Stenberg |
threaded-resolver: revert Curl_expire_latest() switch The switch to using Curl_expire_latest() in commit cacdc27f52b was a mistake and was against the advice even mentioned in that commi
threaded-resolver: revert Curl_expire_latest() switch The switch to using Curl_expire_latest() in commit cacdc27f52b was a mistake and was against the advice even mentioned in that commit. The comparison in asyn-thread.c:Curl_resolver_is_resolved() makes Curl_expire() the suitable function to use. Bug: http://curl.haxx.se/bug/view.cgi?id=1426 Reported-By: graysky
show more ...
|
Revision tags: curl-7_38_0 |
|
#
cacdc27f |
| 25-Aug-2014 |
Daniel Stenberg |
low-speed-limit: avoid timeout flood Introducing Curl_expire_latest(). To be used when we the code flow only wants to get called at a later time that is "no later than X" so that som
low-speed-limit: avoid timeout flood Introducing Curl_expire_latest(). To be used when we the code flow only wants to get called at a later time that is "no later than X" so that something can be checked (and another timeout be added). The low-speed logic for example could easily be made to set very many expire timeouts if it would be called faster or sooner than what it had set its own timer and this goes for a few other timers too that aren't explictiy checked for timer expiration in the code. If there's no condition the code that says if(time-passed >= TIME), then Curl_expire_latest() is preferred to Curl_expire(). If there exists such a condition, it is on the other hand important that Curl_expire() is used and not the other. Bug: http://curl.haxx.se/mail/lib-2014-06/0235.html Reported-by: Florian Weimer
show more ...
|
#
09b5a998 |
| 20-Aug-2014 |
Michael Wallner |
resolve: cache lookup for async resolvers While waiting for a host resolve, check if the host cache may have gotten the name already (by someone else), for when the same name is reso
resolve: cache lookup for async resolvers While waiting for a host resolve, check if the host cache may have gotten the name already (by someone else), for when the same name is resolved by several simultanoues requests. The resolver thread occasionally gets stuck in getaddrinfo() when the DNS or anything else is crappy or slow, so when a host is found in the DNS cache, leave the thread alone and let itself cleanup the mess.
show more ...
|
Revision tags: curl-7_37_1 |
|
#
691985ce |
| 21-May-2014 |
Steve Holme |
bits.close: Fixed compilation warning warning: implicit declaration of function 'connclose'
|
Revision tags: curl-7_37_0 |
|
#
df13f8e8 |
| 20-May-2014 |
Daniel Stenberg |
bits.close: introduce connection close tracking Make all code use connclose() and connkeep() when changing the "close state" for a connection. These two macros take a string argument wit
bits.close: introduce connection close tracking Make all code use connclose() and connkeep() when changing the "close state" for a connection. These two macros take a string argument with an explanation, and debug builds of curl will include that in the debug output. Helps tracking connection re-use/close issues.
show more ...
|
Revision tags: curl-7_36_0, curl-7_35_0 |
|
#
041d1e14 |
| 10-Jan-2014 |
Daniel Stenberg |
threaded-resolver: never use NULL hints with getaddrinfo The net effect of this bug as it appeared to users, would be that libcurl would timeout in the connect phase. When disab
threaded-resolver: never use NULL hints with getaddrinfo The net effect of this bug as it appeared to users, would be that libcurl would timeout in the connect phase. When disabling IPv6 use but still using getaddrinfo, libcurl would wrongly not init the "hints" struct field in init_thread_sync() which would subsequently lead to a getaddrinfo() invoke with a zeroed hints with ai_socktype set to 0 instead of SOCK_STREAM. This would lead to different behaviors on different platforms but basically incorrect output. This code was introduced in 483ff1ca75cbea, released in curl 7.20.0. This bug became a problem now due to the happy eyeballs code and how libcurl now traverses the getaddrinfo() results differently. Bug: http://curl.haxx.se/mail/lib-2014-01/0061.html Reported-by: Fabian Frank Debugged-by: Fabian Frank
show more ...
|
Revision tags: curl-7_34_0, curl-7_33_0 |
|
#
158dfe2c |
| 17-Sep-2013 |
Steve Holme |
dns: fix compilation with MinGW from commit df69440d05f113 Avoid 'interface' literal that some MinGW versions define as a macro Additionally, corrected some very, very minor coding
dns: fix compilation with MinGW from commit df69440d05f113 Avoid 'interface' literal that some MinGW versions define as a macro Additionally, corrected some very, very minor coding style errors.
show more ...
|
#
df69440d |
| 07-Sep-2013 |
Kim Vandry |
libcurl: New options to bind DNS to local interfaces or IP addresses
|
#
0b5ae7c8 |
| 10-Sep-2013 |
Daniel Stenberg |
NI_MAXSERV: remove all use of it Solaris with the SunStudio Compiler is reportedly missing this define, but as we're using it without any good reason on all the places it was used I'
NI_MAXSERV: remove all use of it Solaris with the SunStudio Compiler is reportedly missing this define, but as we're using it without any good reason on all the places it was used I've now instead switched to just use sensible buffer sizes that fit a 32 bit decimal number. Which also happens to be smaller than the common NI_MAXSERV value which is 32 on most machines. Bug: http://curl.haxx.se/bug/view.cgi?id=1277 Reported-by: D.Flinkmann
show more ...
|
Revision tags: curl-7_32_0, curl-7_31_0, curl-7_30_0 |
|
#
a995ea05 |
| 18-Feb-2013 |
Daniel Stenberg |
resolver_error: remove wrong error message output The attempt to use gai_strerror() or alternative function didn't work as the 'sock_error' field didn't contain the proper error code. Bu
resolver_error: remove wrong error message output The attempt to use gai_strerror() or alternative function didn't work as the 'sock_error' field didn't contain the proper error code. But since this hasn't been reported and thus isn't really a big deal I decided to just scrap the whole attempt to output the detailed resolver error and instead remain with just stating that the resolving of the name failed.
show more ...
|
#
25e577b3 |
| 18-Feb-2013 |
Kim Vandry |
Curl_resolver_is_resolved: show proper host name on failed resolve
|
#
52b5eadf |
| 18-Feb-2013 |
Daniel Stenberg |
Curl_resolver_is_resolved: fix compiler warning conversion to 'int' from 'long int' may alter its value
|
Revision tags: curl-7_29_0 |
|
#
5a053ffe |
| 06-Jan-2013 |
Yang Tse |
build: fix circular header inclusion with other packages 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 n
build: fix circular header inclusion with other packages 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.
show more ...
|