This is what's new and changed in the c-ares 1.7.0 release: Changed: o in6_addr is not used in ares.h anymore, but a private ares_in6_addr is instead declared and used o ares_gethostbyname() now supports 'AF_UNSPEC' as a family for resolving either AF_INET6 or AF_INET o a build-time configured ares_socklen_t is now used instead of socklen_t o new ares_library_init() and ares_library_cleanup() functions o new --enable-curldebug configure option o ARES_ECANCELLED is now sent as reason for ares_cancel() o added ares_parse_srv_reply() o added ares_parse_txt_reply() Fixed: o ares_parse_*_reply() functions now return ARES_EBADRESP instead of ARES_EBADNAME if the name in the response failed to decode o only expose/export symbols starting with 'ares_' o fix \Device\TCP handle leaks triggered by buggy iphlpapi.dll o init without internet gone no longer fails o out of bounds memory overwrite triggered with malformed /etc/hosts file Thanks go to these friendly people for their efforts and contributions: Phil Blundell, Japheth Cleaver, Yang Tse, Gregor Jasny, Joshua Kwan, Timo Teras, Jakub Hrozek, John Engelhart Have fun!