C Ares Versions Save

A C library for asynchronous DNS requests

cares-1_28_1

1 month ago

c-ares version 1.28.1 - Mar 30 2024

This release contains a fix for a single significant regression introduced in c-ares 1.28.0.

  • ares_search() and ares_getaddrinfo() resolution fails if no search domains are specified. Issue #737

cares-1_28_0

1 month ago

c-ares version 1.28.0 - Mar 29 2024

This is a feature and bugfix release.

Features:

  • Emit warnings when deprecated c-ares functions are used. This can be disabled by passing a compiler definition of CARES_NO_DEPRECATED. PR #732
  • Add function ares_search_dnsrec() to search for records using the new DNS record data structures. PR #719
  • Rework internals to pass around ares_dns_record_t instead of binary data, this introduces new public functions of ares_query_dnsrec() and ares_send_dnsrec(). PR #730

Changes:

  • tests: when performing simulated queries, reduce timeouts to make tests run faster
  • Replace configuration file parsers with memory-safe parser. PR #725
  • Remove acountry completely, the manpage might still get installed otherwise. Issue #718

Bugfixes:

  • CMake: don't overwrite global required libraries/definitions/includes which could cause build errors for projects chain building c-ares. Issue #729
  • On some platforms, netinet6/in6.h is not included by netinet/in.h and needs to be included separately. PR #728
  • Fix a potential memory leak in ares_init(). Issue #724
  • Some platforms don't have the isascii() function. Implement as a macro. PR #721
  • CMake: Fix Chain building if CMAKE runtime paths not set
  • NDots configuration should allow a value of zero. PR #735

Thanks go to these friendly people for their efforts and contributions for this release:

  • Brad House (@bradh352)
  • Cristian Rodríguez (@crrodriguez)
  • Daniel Stenberg (@bagder)
  • Faraz (@farazrbx)
  • Faraz Fallahi (@fffaraz)
  • Oliver Welsh (@oliverwelsh)

cares-1_27_0

2 months ago

c-ares version 1.27.0 - Feb 23 2024

This is a security, feature, and bugfix release.

Security:

  • Moderate. CVE-2024-25629. Reading malformatted /etc/resolv.conf, /etc/nsswitch.conf or the HOSTALIASES file could result in a crash. GHSA-mg26-v6qh-x48q

Features:

  • New function ares_queue_active_queries() to retrieve number of in-flight queries. PR #712
  • New function ares_queue_wait_empty() to wait for the number of in-flight queries to reach zero. PR #710
  • New ARES_FLAG_NO_DEFLT_SVR for ares_init_options() to return a failure if no DNS servers can be found rather than attempting to use 127.0.0.1. This also introduces a new ares status code of ARES_ENOSERVER. PR #713

Changes:

  • EDNS Packet size should be 1232 as per DNS Flag Day. PR #705

Bugfixes:

  • Windows DNS suffix search list memory leak. PR #711
  • Fix warning due to ignoring return code of write(). PR #709
  • CMake: don't override target output locations if not top-level. Issue #708
  • Fix building c-ares without thread support. PR #700

Thanks go to these friendly people for their efforts and contributions for this release:

  • Anthony Alayo (@anthonyalayo)
  • Brad House (@bradh352)
  • Cheng Zhao (@zcbenz)
  • Cristian Rodríguez (@crrodriguez)
  • Daniel Stenberg (@bagder)
  • Oliver Welsh (@oliverwelsh)
  • Vojtěch Vobr (@vojtechvobr)

cares-1_26_0

3 months ago

c-ares version 1.26.0 - Jan 26 2024

This is a feature and bugfix release.

Features:

  • Event Thread support. Integrators are no longer required to monitor the file descriptors registered by c-ares for events and call ares_process() when enabling the event thread feature via ARES_OPT_EVENT_THREAD passed to ares_init_options(). PR #696
  • Added flags to are_dns_parse() to force RAW packet parsing. PR #693

Changes:

  • Mark ares_fds() as deprecated. PR #691

Bugfixes:

  • adig: Differentiate between internal and server errors. e10b16a
  • Autotools allow make to override CFLAGS/CPPFLAGS/CXXFLAGS. PR #695
  • Autotools: fix building for 32bit windows due to stdcall symbol mangling. PR #689
  • RR Name should not be sanity checked against the Question. PR #685

Thanks go to these friendly people for their efforts and contributions for this release:

  • Brad House (@bradh352)
  • Daniel Stenberg (@bagder)
  • Erik Lax (@eriklax)
  • Gisle Vanem (@gvanem)

Full release note history available here

cares-1_25_0

4 months ago

c-ares version 1.25.0 - Jan 3 2024

This is a maintenance release.

Changes:

  • AutoTools: rewrite build system to be lighter weight and fix issues in some semi-modern systems. It is likely this has broken building on some less common and legacy OSs, please report issues. PR #674
  • Rewrite ares_strsplit() as a wrapper for ares__buf_split() for memory safety reasons. 88c444d
  • The ahost utility now uses ares_getaddrinfo() and returns both IPv4 and IPv6 addresses by default. PR #669
  • OpenBSD: Add SOCK_DNS flag when creating socket. PR #659

Bugfixes:

  • Tests: Live reverse lookups for Google's public DNS servers no longer return results, replace with CloudFlare pubic DNS servers. 1231aa7
  • MacOS legacy SDKs require sys/socket.h before net/if.h PR #673
  • Connection failures should increment the server failure count first or a retry might be enqueued to the same server. 05181a6
  • On systems that don't implement the ability to enumerate network interfaces the stubs used the wrong prototype. eebfe0c
  • Fix minor warnings and documentation typos. PR #666
  • Fix support for older GoogleTest versions. d186f11
  • getrandom() may require sys/random.h on some systems. Issue #665
  • Fix building tests with symbol hiding enabled. Issue #664

Thanks go to these friendly people for their efforts and contributions for this release:

  • Brad House (@bradh352)
  • Daniel Stenberg (@bagder)
  • Gregor Jasny (@gjasny)
  • Martin Chang (@marty1885)

Full release note history available here

cares-1_24_0

5 months ago

cares-1_23_0

5 months ago

cares-1_22_1

5 months ago

cares-1_22_0

6 months ago

cares-1_21_0

6 months ago