Age | Commit message (Collapse) | Author |
|
|
|
used to keep options for later re-usal when ares_init_options() is used.
|
|
specific sockets and thus avoiding select() and associated functions/macros.
This function will be used by upcoming libcurl releases for this very
reason. It also made me export the ares_socket_t type in the public ares.h
header file, since ares_process_fd() uses that type for two of the arguments.
|
|
that could cause it to return a bad return code.
|
|
c-ares library. It is just a convinience source code helper function
for use in example programs adig.c and ahost.c
|
|
|
|
DNS from /etc/nsswitch.conf, /etc/host.conf or /etc/svc.conf when
/etc/resolv.conf did not exist or was unable to read it.
|
|
struct, and there are domain/search entries in /etc/resolv.conf, the domains
of the options struct will be overridden.
|
|
|
|
|
|
|
|
|
|
|
|
(ares_init.c/get_iphlpapi_dns_info() function): when I disable the network
by hand or disconnect the network cable in Windows 2000 or Windows XP, my
application gets 127.0.0.1 as the only name server. The problem comes from
'GetNetworkParams' function, that returns the empty string "" as the only
name server in that case. Moreover, the Windows implementation of
inet_addr() returns INADDR_LOOPBACK instead of INADDR_NONE.
|
|
o made ares_version.h use extern "C" for c++ compilers
o fixed compiler warnings in ares_getnameinfo.c
o fixed a buffer position init for TCP reads
|
|
not always zero!
|
|
|
|
|
|
ares_dns.h, which break c-ares on my Sparc64. Bit-wise operations in C
operate on logical values. And in any event the octets are already in
big-endian (aka network) byte order so they're being reversed (thus the
source of the breakage).
|
|
UDP even when a poll(2) or select(2) suggest otherwise.
|
|
things such as C++ compiler actually is a bad thing and since we don't need
that detection I added a work-around, much inspired by a previous patch by
Paolo Bonzini. This also shortens the configure script quite a lot.
|
|
c-ares call a callback on socket state changes. A better way than the
ares_getsock() to get full control over the socket state.
|
|
|
|
|
|
newer gcc versions that no longer defines "riscos".
|
|
|
|
|
|
use the reentrant getservbyport (getservbyport_r) if it isavailable to ensure it works properly in a threaded environment
|
|
|
|
|
|
when getting the DNS server etc.
|
|
|
|
Make UDP sockets non-blocking. I've confirmed that at least on Linux 2.4 a
read event can come back from poll() on a valid SOCK_DGRAM socket but
recv(2) will still block. This patch doesn't ignore EAGAIN in
read_udp_packets(), though maybe it should. (This patch was edited by Daniel
Stenberg and a new configure test was added (imported from curl's configure)
to properly detect what non-blocking socket approach to use.)
|
|
I'm not quite sure how this was happening, but I've been seeing PTR queries
which seem to return empty responses. At least, they were empty when calling
ares_expand_name() on the record. Here's a patch which guarantees to
NUL-terminate the expanded name. The old behavior failed to NUL-terminate if
len was 0, and this was causing strlen() to run past the end of the buffer
after calling ares_expand_name() and getting ARES_SUCCESS as the return
value. If q is not greater than *s then it's equal and *s is always
allocated with at least one byte.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
X.
|
|
systems that do not include these functions. These will be necessary for CIDR support and IPv6 support.
|
|
first little steps towards IPv6 support!
|
|
|
|
|
|
when they made Alpha's) uses /etc/svc.conf for the purpose fixed below for
other OSes. He made c-ares check for and understand it if present.
- Now c-ares will use local host name lookup _before_ DNS resolving by default
if nothing else is told.
|
|
file to determine the sequence in which to search /etc/hosts and DNS. So on
systems where this order is defined by /etc/host.conf instead of a "lookup"
entry in /etc/resolv.conf, C-ARES will always default to looking in DNS
first, and /etc/hosts second.
c-ares now looks at
1) resolv.conf (for the "lookup" line);
2) nsswitch.fon (for the "hosts:" line);
3) host.conf (for the "order" line).
First match wins.
|
|
|
|
|
|
|