2024-11-10 10:14:10 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
libcares: updated to 1.34.3
c-ares version 1.34.3 - November 9 2024
This is a bugfix release.
Changes:
* Build the release package in an automated way so we can provide
provenance as per [SLSA3](https://slsa.dev/).
Bugfixes:
* Some upstream servers are non-compliant with EDNS options, resend queries
without EDNS.
* Android: <=7 needs sys/system_properties.h
* Android: CMake needs `-D_GNU_SOURCE` and others.
* TSAN warns on missing lock, but lock isn't actually necessary.
* `ares_getaddrinfo()` for `AF_UNSPEC` should retry IPv4 if only IPv6 is
received.
* `ares_send()` shouldn't return `ARES_EBADRESP`, its `ARES_EBADQUERY`.
* Fix typos in man pages.
|
2024-10-16 10:51:31 by Adam Ciarcinski | Files touched by this commit (4) | |
Log message:
libcares: updated to 1.34.2
c-ares version 1.34.2 - October 15 2024
This release contains a fix for downstream packages detecting the c-ares
version based on the contents of the header file rather than the
distributed pkgconf or cmake files.
|
2024-10-15 00:06:30 by Thomas Klausner | Files touched by this commit (3) |
Log message:
libcares: fix version string in header for CMake
Bug report filed upstream.
Bump PKGREVISION.
|
2024-10-13 09:45:55 by Thomas Klausner | Files touched by this commit (3) | |
Log message:
libcares: update to 1.34.1.
## c-ares version 1.34.1 - Octover 9 2024
This release fixes a packaging issue.
## c-ares version 1.34.0 - October 9 2024
This is a feature and bugfix release.
Features:
* adig: read arguments from adigrc.
* Add new pending write callback optimization via `ares_set_pending_write_cb`.
* New function `ares_process_fds()`.
* Failed servers should be probed rather than redirecting queries which could
cause unexpected latency.
* adig: rework command line arguments to mimic dig from bind.
* Add new method for overriding network functions
`ares_set_socket_function_ex()` to properly support all new functionality.
* Fix regression with custom socket callbacks due to DNS cookie support.
* ares_socket: set IP_BIND_ADDRESS_NO_PORT on ares_set_local_ip* tcp sockets
* URI parser/writer for ares_set_servers_csv()/ares_get_servers_csv().
Changes:
* Connection handling modularization.
* Expose library/utility functions to tools.
* Remove `ares__` prefix, just use `ares_` for internal functions.
Bugfixes:
* fix: potential WIN32_LEAN_AND_MEAN redefinition.
* Fix googletest v1.15 compatibility.
* Fix pkgconfig thread dependencies.
|
2024-08-25 08:19:21 by Thomas Klausner | Files touched by this commit (575) |
Log message:
*: replace CMAKE_ARGS with CMAKE_CONFIGURE_ARGS
|
2024-04-14 10:15:59 by Thomas Klausner | Files touched by this commit (1) |
Log message:
libcares: fix pkg-config file
Bump PKGREVISION.
|
2024-04-05 13:17:03 by Thomas Klausner | Files touched by this commit (3) | |
Log message:
libcares: update to 1.28.1.
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
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
|
2024-02-23 13:58:34 by Thomas Klausner | Files touched by this commit (3) | |
Log message:
libcares: update to 1.27.0.
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
|
2024-01-28 14:02:12 by Thomas Klausner | Files touched by this commit (3) | |
Log message:
libcares: update to 1.26.0.
## c-ares version 1.26.0 - Jan 26 2024
Features:
* Event Thread support. Integrators are no longer requried 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](https://github.com/c-ares/c-ares/pull/696)
* Added flags to `are_dns_parse()` to force RAW packet parsing.
[PR #693](https://github.com/c-ares/c-ares/pull/693)
Changes:
* Mark `ares_fds()` as deprected.
[PR #691](https://github.com/c-ares/c-ares/pull/691)
Bugfixes:
* `adig`: Differentiate between internal and server errors.
[e10b16a](https://github.com/c-ares/c-ares/commit/e10b16a)
* Autotools allow make to override CFLAGS/CPPFLAGS/CXXFLAGS.
[PR #695](https://github.com/c-ares/c-ares/pull/695)
* Autotools: fix building for 32bit windows due to stdcall symbol mangling.
[PR #689](https://github.com/c-ares/c-ares/pull/689)
* RR Name should not be sanity checked against the Question.
[PR #685](https://github.com/c-ares/c-ares/pull/685)
|
2024-01-07 17:05:32 by Thomas Klausner | Files touched by this commit (3) | |
Log message:
libcares: update to 1.25.0.
Version 1.25.0 (2 Jan 2024)
GitHub (2 Jan 2024)
- [Brad House brought this change]
1.25.0 release prep (#676)
Brad House (31 Dec 2023)
- tests: replace google DNS with CloudFlare for reverse lookups as google's \
servers stopped responding properly
- OSSFuzz: it assumes autotools builds a static library by default, which means \
the old autotools must have done that even though there were comments saying it \
wasn't. Disable static by default on Windows however since it can't build both \
simultaneously.
- autotools: update logic for building tests to provide more feedback
- set winver consistently across build systems
GitHub (28 Dec 2023)
- [Brad House brought this change]
Autotools: rework to simplify and fix recent issues (#674)
Completely rework the autotools build system, issues have cropped up due to \
the complexity and could cause issues on even semi-modern Linux systems (Ubuntu \
20.04 for example).
Changes include:
Remove all curl/xc/cares m4 helper files, they go overboard on detections of \
functions and datatypes. Go back to more plain autoconf macros as they've come a \
long way over the years.
Use known systems and heuristics to determine datatypes for functions like \
send() and recv(), rather than the error prone detection which required \
thousands of permutations and might still get it wrong.
Remove unneeded configure arguments like --enable-debug or --enable-optimize, \
its more common for people to simply pass their own CFLAGS on the command line.
Only require CARES_STATICLIB definition on Windows static builds, its not \
necessary ever for other systems, even when hiding non-public symbols.
Remove some function and definition detections that were never used in c-ares
The test framework is now embedded into the toplevel configure system, there \
was no need to chain build the test system as it is never built externally to \
c-ares.
As a side-effect of the changes, a configure run completes in about 25% of the \
original time.
This has been tested on various Linux distributions (of varying age), FreeBSD, \
MacOS, Windows (via MSYS2 with Mingw), and Solaris10/11 (by @dfandrich), AIX 7.3 \
(by @dfandrich). It is not unlikely that this may have broken more esoteric or \
legacy systems, and we'll likely need to be ready to accept bug reports and \
patches, but it has removed over 10k lines of build system code. It is very \
likely any issues that crop up will add far fewer lines of code to fix such \
systems.
Fixes Bug: #670
Fix By: Brad House (@bradh352)
Brad House (22 Dec 2023)
- docs: host -> ip
fix mismatched documentation stating host instead of ip
Fix By: Brad House (@bradh352)
GitHub (21 Dec 2023)
- [Brad House brought this change]
Old MacOS SDKs require you include sys/socket.h before net/if.h (#673)
Old MacOS SDKs (like 10.8) require you include `sys/socket.h` before you \
include `net/if.h` as reported by MacPorts. Using a new SDK but with setting \
the macos target version does not have the same issue.
Fixes Issue: #672
Fix By: Brad House (@bradh352)
- [Brad House brought this change]
Autotools warning fixes (#671)
* get rid of clashes with curl namespace
* remove warnings due to deprecated functionality
* reorder some macro calls to get rid of warnings due to being called in the \
wrong order
Fix By: Brad House (@bradh352)
Brad House (19 Dec 2023)
- clang-format
- ares_strsplit() rewrite as wrapper around ares__buf_split()
We want to limit as much as possible any hand written parsers.
ares__buf_split() uses the new memory-safe parsing routines. This
adds a couple of additional flags to remove duplicates which the
existing split code did.
Fix By: Brad House (@bradh352)
- clang-format
- sonarcloud: const
- Connection failure should increment server failure count first
In order to be sure a different server is chosen on the next query,
a read error should result in the failure count being updated
first before requeing the request to a different server.
Fix By: Brad House (@bradh352)
GitHub (18 Dec 2023)
- [Brad House brought this change]
ahost should use ares_getaddrinfo() these days (#669)
ahost wasn't printing both ipv4 and ipv6 addresses. This day and age, it \
really should.
This PR also adds the ability to specify the servers to use.
Fix By: Brad House (@bradh352)
Brad House (17 Dec 2023)
- Fix bad stub for ares__iface_ips_enumerate()
If the ability to enumerate interface ip addresses does not exist
on a system, the stub function contained the wrong prototype.
Fixes Bug: #668
Fix By: Brad House (@bradh352)
GitHub (17 Dec 2023)
- [Gregor Jasny brought this change]
Fix minor warnings and documentation typos (#666)
Build warnings could be seen \
[here](https://buildd.debian.org/status/fetch.php?pkg=c-ares&arch=arm64&ver=1.24.0-1&stamp=1702826366&raw=0) \
[origin](https://buildd.debian.org/status/package.php?p=c-ares)
Fix By: Gregor Jasny (@gjasny)
- [Brad House brought this change]
CI: Add Alpine Linux and old Ubuntu (#667)
Alpine linux doesn't use glibc but instead musl c, so provides a good \
alternative test bed. We are also adding the oldest non-EOL ubuntu version so we \
can test against older linux variants to prevent surprises.
This patch also migrates more tests to use cmake and ninja in order to reduce \
overall build times as we seem to run out of credits on Cirrus-CI pretty \
quickly.
Fix By: Brad House (@bradh352)
Brad House (17 Dec 2023)
- fix support with older google test versions
- getrandom() may require sys/random.h on some systems
There is a reported build issue where getrandom() is detected
but compile fails due to a missing prototype. This commit attempts
to resolve that issue.
Fixes Bug: #665
Fix By: Brad House (@bradh352)
GitHub (17 Dec 2023)
- [Martin Chang brought this change]
Use SOCK_DNS extension on socket on OpenBSD (#659)
This patch added the `SOCK_DNS` flag when running on OpenBSD. Allowing a \
reduced set of `pledge(2)` promises. Before this patch. The "stdio rpath \
inet" promises must be used in order to resolve any records. After the \
patch inet can be replaced with dns which only allows communication on \
destination port 53, instead of on all ports.
Side note: I checked the OpenBSD kernel source code. Even though the socket \
document says the DNS port (typically 53)., The OpenBSD 7.4 kernel only allows \
53.
Fix By: Martin Chang (@marty1885)
Brad House (17 Dec 2023)
- ci: disable static for symbol hiding tests
- ci: add test case for building with hidden symbol visibility
- fix test building with symbol hiding
New test cases depend on internal symbols for calculating timeouts.
Disable those test features if symbol hiding is enabled.
Fixes Bug: #664
Fix By: Brad House (@bradh352)
|