aboutsummaryrefslogtreecommitdiff
path: root/lib/hostip.c
AgeCommit message (Collapse)Author
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
2002-02-18INADDR_NONE should be in_addr_t to work with 64bit archs better.Daniel Stenberg
Really, we should only #define this in one file, not both here and in connect.c!
2002-01-31_num_chars did wrong when called with a number that starts with 1!Daniel Stenberg
2002-01-28someone should have me punished, but this bug made curl bug seriouslyDaniel Stenberg
on IPv4-linux machines
2002-01-18prevents gcc -Wcast-align from complainingDaniel Stenberg
2002-01-17include our own sprintf() prototype to make it return sensible data onDaniel Stenberg
all platforms, I also edited a few data types slightly to prevent my compiler from warning on comparisions between signed and unsigned values
2002-01-17Get this working, still need to check for leaks and such, but should beSterling Hughes
fine..
2002-01-17Make the keys for hostcache entries be in the format::Sterling Hughes
host:port, so accessing curl.haxx.se on port 80 would yield a key value of :: curl.haxx.se:80
2002-01-14a memory leak when name lookup failed is now removedDaniel Stenberg
2002-01-08added two typecasts to prevent compiler (gcc3) warningsDaniel Stenberg
2002-01-081) the dns_cache_timeout should be an integer, not a boolSterling Hughes
2) in the curl_dns_cache_entry structure, timestamp should be a time_t instead of an integer (although I doubt it matters).
2002-01-08Add support for DNS cache timeouts via the CURLOPT_DNS_CACHE_TIMEOUT option.Sterling Hughes
The default cache timeout for this is 60 seconds, which is arbitrary and completely subject to change :)
2002-01-07Probably not necessary, but good practice.Sterling Hughes
2002-01-07Make cach'ing work with threads now, there are now three cases:Sterling Hughes
- Use a global dns cache (via setting the tentatively named, CURLOPT_DNS_USE_GLOBAL_CACHE option to true) - Use a per-handle dns cache, by default - Use a pooled dns cache when in the "multi" interface
2002-01-03Sterling Hughes' provided initial DNS cache source code.Daniel Stenberg
2002-01-02Philip Gladstone's 64-bit sparc native compiler compatibility issues fixed.Daniel Stenberg
2001-12-04Eric's #include fixes for better macos compilesDaniel Stenberg
2001-10-23pack_hostent() now aligns the data properly on 64bit boundaries to work onDaniel Stenberg
more CPU architectures