1
0
mirror of https://frontier.innolan.net/rainlance/c-ares.git synced 2025-12-06 20:54:04 +00:00
Commit Graph

183 Commits

Author SHA1 Message Date
e61d4b9e21 Introduce ares_dup(3) and new thoughts about API/ABI and how to move forwards.
Also discussed on the ml.
2008-12-03 09:59:50 +00:00
7e39e944ea Gerald Combs fixed a bug in ares_parse_ptr_reply() which would cause a
buffer to shrink instead of expand if a reply contained 8 or more records.
2008-11-26 17:04:35 +00:00
8781fb19f9 Brad Spencer provided changes to allow buildconf to work on OS X. 2008-11-26 16:51:51 +00:00
aa1534eb20 In preparation for the upcomming IPv6 nameservers patch, the internal
ares_addr union is now changed into an internal struct which also holds
the address family.
2008-11-25 16:26:58 +00:00
8a6b51d560 - Brad Spencer brought the new function ares_gethostbyname_file() which simply
resolves a host name from the given file, using the regular hosts syntax.
2008-11-19 15:16:16 +00:00
1a1b4eb4f2 - Carlo Contavalli added support for the glibc "rotate" option, as documented
in man resolv.conf:

  causes round robin selection of nameservers from among those listed.  This
  has the effect of spreading the query load among all listed servers, rather
  than having all clients try the first listed server first every time.

  You can enable it with ARES_OPT_ROTATE
2008-11-01 18:35:19 +00:00
64c82d0853 Charles Hardin patch:
- handles the EINPROGRESS for UDP connects
- uses closesocket instead of close on some paths that were noticed
2008-10-21 01:58:23 +00:00
43daf6decd Charles Hardin made adig support a regular numerical dotted IP address for the
-s option as well.
2008-10-17 11:26:36 +00:00
e620425536 Sync up with reality 2008-10-07 13:34:59 +00:00
e18952cc6f Sync up with reality 2008-09-17 01:33:43 +00:00
d71fd1b305 Version 1.5.3 2008-08-29 08:33:02 +00:00
2b838e85e7 George Neill's fix acountry sample application compilation failure. 2008-08-25 03:44:43 +00:00
09d10cb5c5 Brad House's validation that DNS response address matches the request address 2008-08-25 03:34:50 +00:00
3f1bde7664 - Fix by Tofu Linden:
The symptom:
  * Users (usually, but not always) on 2-Wire routers and the Comcast service
  and a wired connection to their router would find that the second and
  subsequent DNS lookups from fresh processes using c-ares to resolve the same
  address would cause the process to never see a reply (it keeps polling for
  around 1m15s before giving up).

  The repro:
  * On such a machine (and yeah, it took us a lot of QA to find the systems
  that reproduce such a specific problem!), do 'ahost www.secondlife.com',
  then do it again.  The first process's lookup will work, subsequent lookups
  will time-out and fail.

  The cause:
  * init_id_key() was calling randomize_key() *before* it initialized
  key->state, meaning that the randomness generated by randomize_key() is
  immediately overwritten with deterministic values. (/dev/urandom was also
  being read incorrectly in the c-ares version we were using, but this was
  fixed in a later version.)
  * This makes the stream of generated query-IDs from any new c-ares process
  be an identical and predictable sequence of IDs.
  * This makes the 2-Wire's default built-in DNS server detect these queries
  as probable-duplicates and (erroneously) not respond at all.
2008-08-04 20:23:12 +00:00
5c5e64b2f5 Autoconf 2.62 has changed the behaviour of the AC_AIX macro which we use.
Prior versions of autoconf defined _ALL_SOURCE if _AIX was defined. But,
autoconf 2.62 version of AC_AIX defines _ALL_SOURCE along with other four
preprocessor symbols no matter if the system is AIX or not. To keep the
traditional behaviour, as well as an uniform one, across autoconf versions
AC_AIX is replaced with our own internal macro.
2008-08-04 06:48:11 +00:00
e09327a51a Sync up with reality 2008-08-01 03:10:54 +00:00
44ae9e4697 when recvfrom prototype uses a void pointer for arguments 2, 5 or 6 this will
now cause the definition of RECVFROM_TYPE_ARG2_IS_VOID, RECVFROM_TYPE_ARG5_IS_VOID
or RECVFROM_TYPE_ARG6_IS_VOID, as appropriate.
2008-07-21 00:36:55 +00:00
2aeb0314f5 RECVFROM_TYPE_ARG2, RECVFROM_TYPE_ARG5 and RECVFROM_TYPE_ARG6 are now defined
to the data type pointed by its respective argument and not the pointer type.
2008-07-17 03:07:54 +00:00
7dd6d7cbe1 Configure process now checks availability of recvfrom() socket function and
finds out its return type and the types of its arguments. Added definitions
for non-configure systems config files, and introduced macro sreadfrom which
will be used on udp sockets as a recvfrom() wrapper.
2008-07-16 19:16:41 +00:00
b95f5e5bed Improved configure detection of number of arguments for getservbyport_r 2008-07-16 12:26:09 +00:00
e5e2cd5659 Allow --enable-largefile and --disable-largefile configurations.
Configure process no longer needs nor checks size of curl_off_t.
Library will now be built with _REENTRANT symbol defined.
2008-07-15 16:43:39 +00:00
93e7573628 - Phil Blundell: If you ask ares_gethostbyname() to do an AF_INET6 lookup and
the target host has only A records, it automatically falls back to an
  AF_INET lookup and gives you the A results.  However, if the target host has
  a CNAME record, this behaviour is defeated since the original query does
  return some data even though ares_parse_aaa_reply() doesn't consider it
  relevant. Here's a small patch to make it behave the same with and without
  the CNAME.
2008-07-03 11:32:35 +00:00
cd1f1d080c fallback to gettimeofday when monotonic clock is unavailable at run-time 2008-07-02 03:04:56 +00:00
705c749aa1 - As was pointed out to me by Andreas Schuldei, the MAXHOSTNAMELEN define is
not posix or anything and thus c-ares failed to build on hurd (and possibly
  elsewhere). The define was also somewhat artificially used in the windows
  port. Now, I instead rewrote the use of gethostbyname to enlarge the host
  name buffer in case of need and totally avoid the use of the MAXHOSTNAMELEN
  define. I thus also removed the defien from the namser.h file where it was
  once added for the windows build.

  I also fixed init_by_defaults() function to not leak memory in case if
  error.
2008-06-30 12:48:25 +00:00
4ccd0a85b1 fix pkg-config reporting of private libraries needed for static linking 2008-06-09 01:06:48 +00:00
9191dc5c33 Brad House fixed a missing header file inclusion in adig sample program 2008-05-30 15:26:42 +00:00
2d09f0bf7c 1.5.2 2008-05-29 20:10:40 +00:00
46dbd9461a - Introducing millisecond resolution support for the timeout option. See
ares_init_options()'s ARES_OPT_TIMEOUTMS.
2008-05-13 20:48:48 +00:00
0848b4fdaa Use monotonic time source if available. 2008-05-09 16:30:24 +00:00
0645b841d0 - Sebastian made c-ares able to return all PTR-records when doing reverse
lookups. It is not common practice to have multiple PTR-Records for a single
  IP, but its perfectly legal and some sites have those.
2008-05-07 21:20:45 +00:00
3994a0be7f - Doug Goldstein provided a configure patch: updates autoconf 2.13 usage to
autoconf 2.57 usage (which is the version you have specified as the minimum
  version). It's a minor change but it does clean up some warnings with newer
  autoconf (specifically 2.62).
2008-05-07 21:16:06 +00:00
fc4704b4d8 Improved parsing of resolver configuration files 2008-05-05 17:48:25 +00:00
2b31a21d91 - Alexey Simak fixed the VC dsp file by adding the missing source file
ares_expand_string.c
2008-04-04 20:26:06 +00:00
b1c3cc0cfe Alexey Simak made adig support NAPTR records 2008-04-04 20:24:41 +00:00
cb4a169f75 Eino Tuominen improved the code when a file is used to seed the randomizer 2008-04-04 20:05:23 +00:00
521b982a8b Added acountry.c. 2007-12-11 17:26:07 +00:00
aae96300a4 Erik Kline cleaned up ares_gethostbyaddr.c:next_lookup() somewhat 2007-12-03 10:25:05 +00:00
dc0e93d89e Brad Spencer fixed the configure script to assume that there's no
/dev/urandom when built cross-compiled as then the script cannot check for
it.
2007-12-03 10:22:29 +00:00
2e31cc0be4 and we start on 1.5.2! 2007-11-21 10:16:44 +00:00
73b3390b83 change 2007-11-21 10:12:20 +00:00
a15a88a4e6 Avoid a segfault when generating a DNS "Transaction ID" in internal
function init_id_key() under low memory conditions.
2007-10-02 18:26:48 +00:00
e4eb2d0e1d ares_strerror() segfaulted if the input error number was out of the currently
supported range.
2007-10-01 22:52:31 +00:00
c577d2455e today's modifications by Steinar and me 2007-09-28 20:28:20 +00:00
b17bb1bb67 Steinar H. Gunderson fixed: Correctly clear sockets from the fd_set on in
several functions (write_tcp_data, read_tcp_data, read_udp_packets) so that
if it fails and the socket is closed the following code doesn't try to use
the file descriptor.
2007-09-22 21:23:10 +00:00
eee17fc854 Steinar H. Gunderson modified c-ares to now also do to DNS retries even when
TCP is used since there are several edge cases where it still makes sense.
2007-09-22 21:04:16 +00:00
2b43edc964 Brad House provided a fix for ares_save_options(): Apparently I overlooked
something with the ares_save_options() where it would try to do a malloc(0)
when no options of that type needed to be saved.  On most platforms, this was
fine because malloc(0) doesn't actually return NULL, but on AIX it does, so
ares_save_options would return ARES_ENOMEM.
2007-09-22 20:45:50 +00:00
278e8f3926 added Vlad's entire description of his valgrind fix 2007-07-14 13:11:36 +00:00
403b315a3b Vlad Dinulescu fixed two outstanding valgrind reports 2007-07-14 13:08:50 +00:00
93bb7ef1ea 1.4.0 preps 2007-06-08 08:46:28 +00:00
5b992f99dc the revert 2007-06-05 13:53:10 +00:00