Loading ares/CHANGES +5 −0 Original line number Original line Diff line number Diff line Changelog for the c-ares project Changelog for the c-ares project * January 14 2009 (Daniel Stenberg) - ares.h no longer uses the HAVE_STRUCT_IN6_ADDR define check, but instead it now declares the private struct ares_in6_addr for all systems instead of relying on one possibly not present in the system. * January 13 2009 (Phil Blundell) * January 13 2009 (Phil Blundell) - ares__send_query() now varies the retry timeout pseudo-randomly to avoid - ares__send_query() now varies the retry timeout pseudo-randomly to avoid packet storms when several queries were started at the same time. packet storms when several queries were started at the same time. Loading ares/RELEASE-NOTES +2 −1 Original line number Original line Diff line number Diff line Loading @@ -2,7 +2,8 @@ This is what's new and changed in the c-ares 1.6.1 release: Changed: Changed: o o in6_addr is not used in ares.h anymore, but a private ares_in6_addr is instead declared and used Fixed: Fixed: Loading ares/ares.h +17 −9 Original line number Original line Diff line number Diff line /* $Id$ */ /* $Id$ */ /* Copyright 1998 by the Massachusetts Institute of Technology. /* Copyright 1998 by the Massachusetts Institute of Technology. * Copyright (C) 2007-2008 by Daniel Stenberg * Copyright (C) 2007-2009 by Daniel Stenberg * * * Permission to use, copy, modify, and distribute this * Permission to use, copy, modify, and distribute this * software and its documentation for any purpose and without * software and its documentation for any purpose and without Loading Loading @@ -275,21 +275,29 @@ int ares_expand_name(const unsigned char *encoded, const unsigned char *abuf, int ares_expand_string(const unsigned char *encoded, const unsigned char *abuf, int ares_expand_string(const unsigned char *encoded, const unsigned char *abuf, int alen, unsigned char **s, long *enclen); int alen, unsigned char **s, long *enclen); #if !defined(HAVE_STRUCT_IN6_ADDR) && !defined(s6_addr) /* struct in6_addr { * NOTE: before c-ares 1.6.1 we would most often use the system in6_addr * struct below when ares itself was built, but many apps would use this * private version since the header checked a HAVE_* define for it. Starting * with 1.6.1 we always declare and use our own to stop relying on the * system's one. */ struct ares_in6_addr { union { union { unsigned char _S6_u8[16]; unsigned char _S6_u8[16]; } _S6_un; } _S6_un; }; }; #define s6_addr _S6_un._S6_u8 #endif /* * TODO: the structs 'addrttl' and 'addr6ttl' really should get their names * prefixed with ares_ to keep them in our own "name space". */ struct addrttl { struct addrttl { struct in_addr ipaddr; struct in_addr ipaddr; int ttl; int ttl; }; }; struct addr6ttl { struct addr6ttl { struct in6_addr ip6addr; struct ares_in6_addr ip6addr; int ttl; int ttl; }; }; Loading Loading
ares/CHANGES +5 −0 Original line number Original line Diff line number Diff line Changelog for the c-ares project Changelog for the c-ares project * January 14 2009 (Daniel Stenberg) - ares.h no longer uses the HAVE_STRUCT_IN6_ADDR define check, but instead it now declares the private struct ares_in6_addr for all systems instead of relying on one possibly not present in the system. * January 13 2009 (Phil Blundell) * January 13 2009 (Phil Blundell) - ares__send_query() now varies the retry timeout pseudo-randomly to avoid - ares__send_query() now varies the retry timeout pseudo-randomly to avoid packet storms when several queries were started at the same time. packet storms when several queries were started at the same time. Loading
ares/RELEASE-NOTES +2 −1 Original line number Original line Diff line number Diff line Loading @@ -2,7 +2,8 @@ This is what's new and changed in the c-ares 1.6.1 release: Changed: Changed: o o in6_addr is not used in ares.h anymore, but a private ares_in6_addr is instead declared and used Fixed: Fixed: Loading
ares/ares.h +17 −9 Original line number Original line Diff line number Diff line /* $Id$ */ /* $Id$ */ /* Copyright 1998 by the Massachusetts Institute of Technology. /* Copyright 1998 by the Massachusetts Institute of Technology. * Copyright (C) 2007-2008 by Daniel Stenberg * Copyright (C) 2007-2009 by Daniel Stenberg * * * Permission to use, copy, modify, and distribute this * Permission to use, copy, modify, and distribute this * software and its documentation for any purpose and without * software and its documentation for any purpose and without Loading Loading @@ -275,21 +275,29 @@ int ares_expand_name(const unsigned char *encoded, const unsigned char *abuf, int ares_expand_string(const unsigned char *encoded, const unsigned char *abuf, int ares_expand_string(const unsigned char *encoded, const unsigned char *abuf, int alen, unsigned char **s, long *enclen); int alen, unsigned char **s, long *enclen); #if !defined(HAVE_STRUCT_IN6_ADDR) && !defined(s6_addr) /* struct in6_addr { * NOTE: before c-ares 1.6.1 we would most often use the system in6_addr * struct below when ares itself was built, but many apps would use this * private version since the header checked a HAVE_* define for it. Starting * with 1.6.1 we always declare and use our own to stop relying on the * system's one. */ struct ares_in6_addr { union { union { unsigned char _S6_u8[16]; unsigned char _S6_u8[16]; } _S6_un; } _S6_un; }; }; #define s6_addr _S6_un._S6_u8 #endif /* * TODO: the structs 'addrttl' and 'addr6ttl' really should get their names * prefixed with ares_ to keep them in our own "name space". */ struct addrttl { struct addrttl { struct in_addr ipaddr; struct in_addr ipaddr; int ttl; int ttl; }; }; struct addr6ttl { struct addr6ttl { struct in6_addr ip6addr; struct ares_in6_addr ip6addr; int ttl; int ttl; }; }; Loading