aboutsummaryrefslogtreecommitdiff
path: root/lib/hostip.c
AgeCommit message (Collapse)Author
2003-10-04Based on a patch provided by Siddhartha Prakash Jain. In Curl_resolv() whenDaniel Stenberg
my_getaddrinfo() has been called (and wait has been set to TRUE), we check if the name already is resolved and if so don't return wait status to the parent. This can happen with IP-only names.
2003-09-19Added CURLOPT_IPRESOLVE supportDaniel Stenberg
2003-09-14Jeff Pohlmeyer did some marvelous debugging to track this one down. We MUSTDaniel Stenberg
NOT free the existing hash entry when we try to add a new one that matches an existing entry. We now instead free the new one, and make the parent function use the old entry's struct instead.
2003-09-11Curl_is_resolved(): FD_ZERO the file descriptors before we call ares_fds().Daniel Stenberg
Problem tracked down by Bjorn Reese.
2003-09-01The error buffer was not getting filled when Curl_wait_for_resolv() fails.Daniel Stenberg
Jeff Pohlmeyer fixed.
2003-08-22use proper type to prevent compiler warningDaniel Stenberg
2003-08-21Vincent Sanders provided a fix for name resolving when linked with uClibc.Daniel Stenberg
2003-08-19make sure the 'done' variable is always set to something in theDaniel Stenberg
Curl_is_resolved() function
2003-08-19don't set done==TRUE if the host name doesn't resolveDaniel Stenberg
2003-08-06make it build without ares supportDaniel Stenberg
make sure it set async false even when using ipv6 (made test case 20 fail before)
2003-08-05ares awareness/usage/support added. If configure --enable-ares is used, weDaniel Stenberg
build libcurl to use ares for asynch name resolves.
2003-07-23minor code style fixDaniel Stenberg
2003-06-26use CURLDEBUG instead of MALLOCDEBUG for preprocessor conditionsDaniel Stenberg
2003-05-20Gisle Vanem's code for not trusting h_aliases to always be non-NULLDaniel Stenberg
2003-05-13Setup and use CURL_INADDR_NONE all over instead of INADDR_NONE. We setupDaniel Stenberg
the define accordingly in the hostip.h header to work nicely all over.
2003-04-03spell fixDaniel Stenberg
2003-03-19typecast the conversion from const char * to char *Daniel Stenberg
2003-03-03AIX 4.3 or later should use gethostbyname() and not the *_r() version.Daniel Stenberg
2003-02-04added the sharing of DNS cacheJean-Philippe Barette-LaPierre
2003-01-29removed the local variables for emacs and vim, use the new sample.emacsDaniel Stenberg
way for emacs, and vim users should provide a similar non-polluting style
2003-01-16copyright year update in the source headerDaniel Stenberg
2002-12-16EAGAIN on older (correct) glibc versions indicate a problem and not the needDaniel Stenberg
for a bigger buffer and this is indeed badness for us. Making this work on both old and new glibc versions require an ugly loop that in its worse form cause 45 bad loops when using the correct glibc and a non-resolving host name... :-/ We want a better fix. Badly.
2002-11-26fixed Curl_freeaddrinfo() to only free addrinfo, and added Curl_freednsinfo()Daniel Stenberg
for freeing single dns cache entries
2002-11-11The test for DNS cache entries left locked is now only built ifDaniel Stenberg
AGGRESIVE_TEST is also defined, as an addition to MALLOCDEBUG. It doesn't work for multi interface usage and should only be used with careful consideration.
2002-11-05Curl_resolv() now returns a different struct, and it contains a referenceDaniel Stenberg
counter so that the caller needs to decrease that counter when done with the returned data. If compiled with MALLOCDEBUG I've added some extra checking that the counter is decreased before a handle is closed etc.
2002-10-31Disable the DNS cache (by setting the timeout to 0) made libcurl leakDaniel Stenberg
memory. Avery Fay brought the example code that proved this.
2002-10-21glibc 2.2.93 gethostbyname_r() no longer returns ERANGE if the given bufferDaniel Stenberg
size isn't big enough. For some reason they now return EAGAIN. Redhat 8 ships with this glibc version.
2002-09-30Cris Bailiff found this flaw, gethostbyname_r() on linux returns 0 evenDaniel Stenberg
when it can't lookup the name (at least in some cases) and thus we need to make an extra check to detect failures.
2002-09-03updated source code boilerplate/headerDaniel Stenberg
2002-08-30prevent compiler warningDaniel Stenberg
2002-08-08attempted hpux fix for resolvesDaniel Stenberg
2002-06-26Glen Nakamura made his fix look even better!Daniel Stenberg
2002-06-26Glen Nakamura's patch for Curl_getaddrinfo().Daniel Stenberg
2002-06-11Now uses sigsetjmp() and siglongjmp() to bail out from slow name lookups inDaniel Stenberg
case a timeout is set. This seems to work. God knows if it is good enough or what kind of side-effects we introduce here and now. I'll close my eyes and cross my fingers. Hard.
2002-06-10getaddrinfo() failures now show port number too in informational outputDaniel Stenberg
2002-06-05hostcache_fixoffset() is now corrected to work on 64bit architecturesDaniel Stenberg
Bug report #564585.
2002-05-17Fixes bug report #556930 - we need to make sure that the data is all rightDaniel Stenberg
after we've realloc() the packed hostent struct.
2002-05-01Jacky Lam's fix to make the realloc() of the hostent data work properlyDaniel Stenberg
even when the realloc() actually gets a new memory block
2002-04-27Now uses Curl_ as prefix for internal global symbols. curl_ should only beDaniel Stenberg
used for "exported" globals.
2002-04-25In order to not get problems with DNS cache pruning, we no longer storeDaniel Stenberg
any name resolved data in any curl handle struct. That way, we won't mind if the cache entries are pruned for the next time we need them. We'll just resolve them again instead. This changes the Curl_resolv() proto. It modifies the SessionHandle struct but perhaps most importantly, it'll make the internals somewhat dependent on the DNS cache not being disabled as that will cripple operations somewhat. Especially for persistant connections.
2002-04-23the 80 column police narrowed this source code! B-]Daniel Stenberg
2002-04-22use sclose() to close socketsDaniel Stenberg
2002-04-22Jacky Lam's adjust resolve-buffer size patch applied. Slightly editedDaniel Stenberg
by Daniel.
2002-04-19pack_hostent does not handle 64 bit pointers correctly.Daniel Stenberg
A Bjørn Reese patch.
2002-04-17Prune old hostcache entries with each call...Sterling Hughes
This can be optimized a tidbit, but this is a start.
2002-03-19copyright string (year) updateDaniel Stenberg
2002-03-15Jun-ichiro itojun Hagino <itojun@itojun.org>:Daniel Stenberg
Now first check if IPv6 is supported, then use PF_UNSPEC. If not, use PF_INET. It'll solve both the "slow name lookup" problem on IPv4 and still work fine on IPv6 hosts. Bug report #530204 has more details: http://sourceforge.net/tracker/?func=detail&atid=100976&aid=530204&group_id=976
2002-03-15bug report #530204 correctly identified that revision 1.52 broke ipv6Daniel Stenberg
functionality and this change reverts this. However, with this revert we bring back problems on (some/all?) non-IPv6 enabled Linux machines that have getaddrinfo().
2002-02-20Nico Baggus' VMS tweaksDaniel Stenberg
2002-02-18Rick Richardson's getaddrinfo() usage fix to speed up name resolvesDaniel Stenberg