Skip to content

Releases: c-ares/c-ares

1.28.1

30 Mar 15:19
cares-1_28_1
3a26df1
Compare
Choose a tag to compare

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

1.28.0

29 Mar 11:43
cares-1_28_0
458c937
Compare
Choose a tag to compare

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:

1.27.0

23 Feb 07:28
cares-1_27_0
9eb57f2
Compare
Choose a tag to compare

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:

1.26.0

26 Jan 16:22
cares-1_26_0
Compare
Choose a tag to compare

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:

Full release note history available here

1.25.0

04 Jan 20:05
cares-1_25_0
037601f
Compare
Choose a tag to compare

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:

Full release note history available here

1.24.0

17 Dec 10:07
cares-1_24_0
972f456
Compare
Choose a tag to compare

1.23.0

30 Nov 12:58
cares-1_23_0
f83830f
Compare
Choose a tag to compare

1.22.1

19 Nov 15:21
cares-1_22_1
36466bb
Compare
Choose a tag to compare

1.22.0

14 Nov 15:31
cares-1_22_0
Compare
Choose a tag to compare

1.21.0

27 Oct 06:55
cares-1_21_0
Compare
Choose a tag to compare