aboutsummaryrefslogtreecommitdiff
path: root/lib/hostip.c
AgeCommit message (Collapse)Author
2009-11-11- Constantine Sapuntzakis posted bug #2891595Daniel Stenberg
(http://curl.haxx.se/bug/view.cgi?id=2891595) which identified how an entry in the DNS cache would linger too long if the request that added it was in use that long. He also provided the patch that now makes libcurl capable of still doing a request while the DNS hash entry may get timed out.
2009-09-01- Peter Sylvester made a debug featuer for Curl_resolv() that now will forceDaniel Stenberg
libcurl to resolve 'localhost' whatever name you use in the URL *if* you set the --interface option to (exactly) "LocalHost". This will enable us to write tests for custom hosts names but still use a local host server.
2009-04-21libcurl's memory.h renamed to curl_memory.hYang Tse
2009-04-21Moved potential inclusion of system's malloc.h and memory.h header files toYang Tse
setup_once.h. Inclusion of each header file is based on the definition of NEED_MALLOC_H and NEED_MEMORY_H respectively.
2008-11-06Merged existing IPv4 and IPv6 Curl_ip2addr functions into a single oneYang Tse
which now also takes a protocol address family argument.
2008-10-30Use our Curl_addrinfo definition even when an addrinfo struct is available.Yang Tse
Use a wrapper function to call system's getaddrinfo().
2008-10-20*** empty log message ***Yang Tse
2008-10-19fix compiler warningYang Tse
2008-10-19attempt to fix or allow further detection of an elusive icc SIGSEGVYang Tse
2008-10-19attempt to fix compiler warning relative to potential misaligned data accessYang Tse
2008-10-18Removed a line of dead code (discovered by Coverity)Dan Fandrich
2008-10-17protect against 'use after free' or race conditionYang Tse
2008-10-17fix compiler warningYang Tse
2008-10-17OOM condition fixYang Tse
2008-10-13attempt to fix or allow further detection of an elusive icc SIGSEGVYang Tse
2008-10-10attempt to fix or allow further detection of an elusive icc SIGSEGVYang Tse
2008-10-03fix another error introduced in previously mentioned commitYang Tse
2008-10-03fix error introduced in previous commitYang Tse
2008-10-02take 2 at fixing compiler warning: argument might be clobbered by `longjmp' ↵Yang Tse
or `vfork'
2008-10-02fix compiler warning: `variable' might be clobbered by `longjmp' or `vfork'Yang Tse
2008-10-01Fixed some compiler warnings with gccDan Fandrich
2008-09-29Fixed a couple of compile warnings.Dan Fandrich
2008-09-29Moved all signal-based name resolution timeout handling into a single newDan Fandrich
Curl_resolv_timeout function to reduce coupling.
2008-09-24ntoa() and inet_ntoa_r() no longer usedYang Tse
2008-09-06remove unnecessary typecasting of calloc()Yang Tse
2008-09-02Removed some redundant type castsDan Fandrich
2008-07-09- Andreas Schuldei improved Phil Blundell's patch for IPv6 using c-ares, and IDaniel Stenberg
edited it slightly. Now you should be able to use IPv6 addresses fine even with libcurl built to use c-ares.
2008-03-11- Dmitry Popov filed bug report #1911069Daniel Stenberg
(http://curl.haxx.se/bug/view.cgi?id=1911069) that identified a race condition in the name resolver code when the DNS cache is shared between multiple easy handles, each running in simultaneous threads that could cause crashes.
2008-01-15Woops, partly revert my previous commit and do it slightly differently instead.Daniel Stenberg
The signalling of that a global DNS cache is wanted is done by setting the option but the setting of the internal variable that it is in use must not be done until it finally actually gets used! NOTE and WARNING: I noticed that you can't actually switch off the global dns cache with CURLOPT_DNS_USE_GLOBAL_CACHE but you couldn't do that previously either and the option is very clearly and loudly documented as DO NOTE USE so I won't bother to fix this bug now.
2008-01-15I made the torture test on test 530 go through. This was actually due toDaniel Stenberg
silly code left from when we switched to let the multi handle "hold" the dns cache when using the multi interface... Of course this only triggered when a certain function call returned error at the correct moment.
2007-11-07if () => if()Daniel Stenberg
while () => while() and some other minor re-indentings
2007-09-28Renamed a variable to avoid shadowing a global declarations.Dan Fandrich
2007-08-26Fixed some minor mismatched types found by splint.Dan Fandrich
2007-07-01Thomas J. Moore provided a patch that introduces Kerberos5 support inDaniel Stenberg
libcurl. This also makes the options change name to --krb (from --krb4) and CURLOPT_KRBLEVEL (from CURLOPT_KRB4LEVEL) but the old names are still
2007-06-26Robert Iakobashvili re-arranged the internal hash code to work with a customDaniel Stenberg
hash function for different hashes, and also expanded the default size for the socket hash table used in multi handles to greatly enhance speed when very many connections are added and the socket API is used.
2007-04-25Steve Little's fixes to allow compilation on VMS 64-bit modeYang Tse
2007-02-26Removed inclusion of <sys/types.h> and <sys/stat.h> in .c-filesGisle Vanem
since they're already included through "setup.h".
2007-02-21curlassert macro replaced with DEBUGASSERT macro defined in setup_once.hYang Tse
2006-08-21Workaround for Cray UNICOS 9.0 to fix ftp.Dan Fandrich
2006-08-16Minor portability fixes to get things running on UNICOS 9.0 on a Cray Y-MPDan Fandrich
2006-07-25Fix warning: no newline at end of fileYang Tse
2006-07-25Simplify check for NEED_MALLOC_H, and make more explicit that NEED_MALLOC_H ↵Yang Tse
shall be defined if <malloc.h> header file must be included even when including <stdlib.h>.
2006-07-25Moved functions common to IPv4 and C-ares to hostip.c;Gisle Vanem
Curl_freeaddrinfo() and Curl_ip2addr().
2006-07-25Remove comment about c-ares not supporting IPv6.Gisle Vanem
2006-07-21Constify arguments to Curl_he2ai() and Curl_addrinfo_copy().Gisle Vanem
2006-07-21Constify 'hostname' and 'service' to various resolver functions.Gisle Vanem
2006-07-11include <malloc.h> only if HAVE_MALLOC_H and NEED_MALLOC_H are both defined.Yang Tse
2006-07-07Ingmar Runge provided a source snippet that caused a crash. The reason forDaniel Stenberg
the crash was that libcurl internally was a bit confused about who owned the DNS cache at all times so if you created an easy handle that uses a shared DNS cache and added that to a multi handle it would crash. Now we keep more careful internal track of exactly what kind of DNS cache each easy handle uses: None, Private (allocated for and used only by this single handle), Shared (points to a cache held by a shared object), Global (points to the global cache) or Multi (points to the cache within the multi handle that is automatically shared between all easy handles that are added with private caches).
2006-05-04Roland Blom filed bug report #1481217Daniel Stenberg
(http://curl.haxx.se/bug/view.cgi?id=1481217), with follow-ups by Michele Bini and David Byron. libcurl previously wrongly used GetLastError() on windows to get error details after socket-related function calls, when it really should use WSAGetLastError() instead. When changing to this, the former function Curl_ourerrno() is now instead called Curl_sockerrno() as it is necessary to only use it to get errno from socket-related functions as otherwise it won't work as intended on Windows.
2006-04-26Use the HAVE_MALLOC_H and HAVE_PROCESS_H definesGisle Vanem
(more logical).