aboutsummaryrefslogtreecommitdiff
path: root/lib/hostip.c
AgeCommit message (Collapse)Author
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).
2006-02-16Shmulik Regev provided a fix for the DNS cache when using short life times,Daniel Stenberg
as previously it could be holding on to old cached entries longer than requested.
2005-04-19only define _REENTRANT if not already defined, and only in setup.hDaniel Stenberg
2005-02-09FTP code turned into state machine. Not completely yet, but a good start.Daniel Stenberg
The tag 'before_ftp_statemachine' was set just before this commit in case of future need.
2005-01-25Use plain structs and not typedef'ed ones in the hash and linked-list code.Daniel Stenberg
2004-11-18Dan Fandrich fix: eliminates some pedantic CodeWarrior compiler warnings andDaniel Stenberg
errors.
2004-10-10Prevent a longjmp warning by moving the rc assign within Curl_resolv().Daniel Stenberg
Andy Cedilnik reported. Warning on HP-UX?
2004-10-06removed tabs and trailing whitespace from sourceDaniel Stenberg
2004-10-04Made the dns entry remain locked while a connection to the host remains toDaniel Stenberg
allow verbose output during this period. Bertrand Demiddelaer reported and helped fixing.
2004-06-24the _num_chars() function is not used, removingDaniel Stenberg
2004-06-24Replaced all uses of sprintf() with the safer snprintf(). It is just aDaniel Stenberg
precaution to prevent mistakes to lead to buffer overflows.
2004-06-24made the Curl_he2ai() take the port number as an int intead, to avoid lotsDaniel Stenberg
of typecasts all over
2004-06-24prevent warningDaniel Stenberg
2004-06-24Source cleanups. The major one being that we now _always_ use a Curl_addrinfoDaniel Stenberg
linked list for name resolved data, even on hosts/systems with only IPv4 stacks as this simplifies a lot of code.
2004-06-10removed trailing whitespaceDaniel Stenberg
2004-06-10Gisle corrected two commentsDaniel Stenberg
2004-06-10Gisle Vanem's improved verbose output and timeout handling when connecting toDaniel Stenberg
a host name that resolves to multiple IP addresses.
2004-05-17if shrinking the buffer fails, use the older larger oneDaniel Stenberg
2004-05-11curl_global_init_mem() allows the memory functions to be replaced.Daniel Stenberg
memory.h is included everywhere for this.
2004-05-04improved the cleaning up of memory when we fail to resolve names due toDaniel Stenberg
out of memory (thanks to 'runtests.pl -t')
2004-04-26Made defines instead of plain numbers for the Curl_resolv() return code toDaniel Stenberg
make the code easier to read
2004-04-26Major hostip.c cleanup and split into multiple files and easier #ifdefDaniel Stenberg
usage.
2004-04-23 Gisle Vanem found and fixed a memory leak when doing (failing) WindowsDaniel Stenberg
threaded name resolves.
2004-04-21include unistd.h as well for the close() proto on some platforms (like Tru64)Daniel Stenberg
2004-04-20cleanup leftoversDaniel Stenberg
2004-04-14asking for CURL_IPRESOLVE_V6 when ipv6 addresses can't be resolved willDaniel Stenberg
now cause the resolve function to return NULL immediately
2004-04-14Curl_wait_for_resolv() could hang due to the bad timeout timer resolution andDaniel Stenberg
some bad thinking on my part.
2004-04-13Gisle Vanem's fix that makes the multi interface work on Windows again evenDaniel Stenberg
when not using ares.
2004-04-12somewhat safer typecasting in case sizeof(long) != sizeof(void *) (is thereDaniel Stenberg
even such platforms?)
2004-04-06the pack_hostent() proto isn't used/needed with ipv6 is enabled.Daniel Stenberg
time to restructure this source file!
2004-04-06Gisle Vanem's fix for bug item #927979 reported by Nathan O'Sullivan.Daniel Stenberg
Good enough?
2004-04-01Dirk Manske's fix that makes sure we cancel the ares resolve when we time outDaniel Stenberg
from a name resolve. Without this, we leak memory!
2004-04-01removed my previously attempted fix for ares timeouts, not neededDaniel Stenberg
2004-03-31Roy Shan fixed a case that prevented ares name resolve timeouts to occur.Daniel Stenberg
2004-03-31Remove the elapsed time from the most recent select() only.Daniel Stenberg