Skip to content

Commit 6ba8bc0

Browse files
nodejs-github-botaduh95
authored andcommitted
deps: update c-ares to 1.29.0
PR-URL: #53155 Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Mohammed Keyvanzadeh <[email protected]> Reviewed-By: Michaël Zasso <[email protected]> Reviewed-By: Rafael Gonzaga <[email protected]> Reviewed-By: Marco Ippolito <[email protected]>
1 parent 81c3260 commit 6ba8bc0

File tree

107 files changed

+13333
-11610
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

107 files changed

+13333
-11610
lines changed

deps/cares/CHANGES

+293-156
Large diffs are not rendered by default.

deps/cares/CMakeLists.txt

+4-6
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ INCLUDE (CheckCSourceCompiles)
1212
INCLUDE (CheckStructHasMember)
1313
INCLUDE (CheckLibraryExists)
1414

15-
PROJECT (c-ares LANGUAGES C VERSION "1.28.1" )
15+
PROJECT (c-ares LANGUAGES C VERSION "1.29.0" )
1616

1717
# Set this version before release
18-
SET (CARES_VERSION "1.28.1")
18+
SET (CARES_VERSION "1.29.0")
1919

2020
INCLUDE (GNUInstallDirs) # include this *AFTER* PROJECT(), otherwise paths are wrong.
2121

@@ -30,7 +30,7 @@ INCLUDE (GNUInstallDirs) # include this *AFTER* PROJECT(), otherwise paths are w
3030
# For example, a version of 4:0:2 would generate output such as:
3131
# libname.so -> libname.so.2
3232
# libname.so.2 -> libname.so.2.2.0
33-
SET (CARES_LIB_VERSIONINFO "15:1:13")
33+
SET (CARES_LIB_VERSIONINFO "16:0:14")
3434

3535

3636
OPTION (CARES_STATIC "Build as a static library" OFF)
@@ -172,7 +172,7 @@ return 0;
172172
MACOS_V1012)
173173
ENDIF ()
174174

175-
IF ((IOS OR APPLE OR ZOS) AND HAVE_LIBRESOLV)
175+
IF (ZOS AND HAVE_LIBRESOLV)
176176
SET (CARES_USE_LIBRESOLV 1)
177177
ENDIF()
178178

@@ -227,7 +227,6 @@ CHECK_INCLUDE_FILES (sys/select.h HAVE_SYS_SELECT_H)
227227
CHECK_INCLUDE_FILES (sys/stat.h HAVE_SYS_STAT_H)
228228
CHECK_INCLUDE_FILES (sys/time.h HAVE_SYS_TIME_H)
229229
CHECK_INCLUDE_FILES (sys/uio.h HAVE_SYS_UIO_H)
230-
CHECK_INCLUDE_FILES (sys/random.h HAVE_SYS_RANDOM_H)
231230
CHECK_INCLUDE_FILES (sys/event.h HAVE_SYS_EVENT_H)
232231
CHECK_INCLUDE_FILES (sys/epoll.h HAVE_SYS_EPOLL_H)
233232
CHECK_INCLUDE_FILES (ifaddrs.h HAVE_IFADDRS_H)
@@ -341,7 +340,6 @@ CARES_EXTRAINCLUDE_IFSET (HAVE_SYS_SOCKIO_H sys/sockio.h)
341340
CARES_EXTRAINCLUDE_IFSET (HAVE_SYS_TIME_H sys/time.h)
342341
CARES_EXTRAINCLUDE_IFSET (HAVE_SYS_STAT_H sys/stat.h)
343342
CARES_EXTRAINCLUDE_IFSET (HAVE_SYS_UIO_H sys/uio.h)
344-
CARES_EXTRAINCLUDE_IFSET (HAVE_SYS_RANDOM_H sys/random.h)
345343
CARES_EXTRAINCLUDE_IFSET (HAVE_SYS_EVENT_H sys/event.h)
346344
CARES_EXTRAINCLUDE_IFSET (HAVE_SYS_EPOLL_H sys/epoll.h)
347345
CARES_EXTRAINCLUDE_IFSET (HAVE_TIME_H time.h)

deps/cares/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# [![c-ares logo](https://c-ares.org/art/c-ares-logo.svg)](https://c-ares.org/)
22

33
[![Build Status](https://api.cirrus-ci.com/github/c-ares/c-ares.svg?branch=main)](https://cirrus-ci.com/github/c-ares/c-ares)
4-
[![Windows Build Status](https://ci.appveyor.com/api/projects/status/aevgc5914tm72pvs/branch/master?svg=true)](https://ci.appveyor.com/project/c-ares/c-ares/branch/master)
4+
[![Windows Build Status](https://ci.appveyor.com/api/projects/status/aevgc5914tm72pvs/branch/main?svg=true)](https://ci.appveyor.com/project/c-ares/c-ares/branch/main)
55
[![Coverage Status](https://coveralls.io/repos/github/c-ares/c-ares/badge.svg)](https://coveralls.io/github/c-ares/c-ares)
66
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/291/badge)](https://bestpractices.coreinfrastructure.org/projects/291)
77
[![Fuzzing Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/c-ares.svg)](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:c-ares)

deps/cares/RELEASE-NOTES.md

+26-33
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,42 @@
1-
## c-ares version 1.28.1 - Mar 30 2024
2-
3-
This release contains a fix for a single significant regression introduced
4-
in c-ares 1.28.0.
5-
6-
* `ares_search()` and `ares_getaddrinfo()` resolution fails if no search domains
7-
are specified. [Issue #737](https://github.com/c-ares/c-ares/issues/737)
8-
9-
10-
## c-ares version 1.28.0 - Mar 29 2024
1+
## c-ares version 1.29.0 - May 24 2024
112

123
This is a feature and bugfix release.
134

145
Features:
156

16-
* Emit warnings when deprecated c-ares functions are used. This can be
17-
disabled by passing a compiler definition of `CARES_NO_DEPRECATED`. [PR #732](https://github.com/c-ares/c-ares/pull/732)
18-
* Add function `ares_search_dnsrec()` to search for records using the new DNS
19-
record data structures. [PR #719](https://github.com/c-ares/c-ares/pull/719)
20-
* Rework internals to pass around `ares_dns_record_t` instead of binary data,
21-
this introduces new public functions of `ares_query_dnsrec()` and
22-
`ares_send_dnsrec()`. [PR #730](https://github.com/c-ares/c-ares/pull/730)
7+
* When using `ARES_OPT_EVENT_THREAD`, automatically reload system configuration
8+
when network conditions change. [PR #759](https://github.com/c-ares/c-ares/pull/759)
9+
* Apple: reimplement DNS configuration reading to more accurately pull DNS
10+
settings. [PR #750](https://github.com/c-ares/c-ares/pull/750)
11+
* Add observability into DNS server health via a server state callback, invoked
12+
whenever a query finishes. [PR #744](https://github.com/c-ares/c-ares/pull/744)
13+
* Add server failover retry behavior, where failed servers are retried with
14+
small probability after a minimum delay. [PR #731](https://github.com/c-ares/c-ares/pull/731)
2315

2416
Changes:
2517

26-
* tests: when performing simulated queries, reduce timeouts to make tests run
27-
faster
28-
* Replace configuration file parsers with memory-safe parser. [PR #725](https://github.com/c-ares/c-ares/pull/725)
29-
* Remove `acountry` completely, the manpage might still get installed otherwise. [Issue #718](https://github.com/c-ares/c-ares/pull/718)
18+
* Mark `ares_channel_t *` as const in more places in the public API. [PR #758](https://github.com/c-ares/c-ares/pull/758)
3019

3120
Bugfixes:
3221

33-
* CMake: don't overwrite global required libraries/definitions/includes which
34-
could cause build errors for projects chain building c-ares. [Issue #729](https://github.com/c-ares/c-ares/issues/729)
35-
* On some platforms, `netinet6/in6.h` is not included by `netinet/in.h`
36-
and needs to be included separately. [PR #728](https://github.com/c-ares/c-ares/pull/728)
37-
* Fix a potential memory leak in `ares_init()`. [Issue #724](https://github.com/c-ares/c-ares/issues/724)
38-
* Some platforms don't have the `isascii()` function. Implement as a macro. [PR #721](https://github.com/c-ares/c-ares/pull/721)
39-
* CMake: Fix Chain building if CMAKE runtime paths not set
40-
* NDots configuration should allow a value of zero. [PR #735](https://github.com/c-ares/c-ares/pull/735)
22+
* Due to a logic flaw dns name compression writing was not properly implemented
23+
which would result in the name prefix not being written for a partial match.
24+
This could cause issues in various record types such as MX records when using
25+
the deprecated API. Regression introduced in 1.28.0. [Issue #757](https://github.com/c-ares/c-ares/issues/757)
26+
* Revert OpenBSD `SOCK_DNS` flag, it doesn't do what the docs say it does and
27+
causes c-ares to become non-functional. [PR #754](https://github.com/c-ares/c-ares/pull/754)
28+
* `ares_getnameinfo()`: loosen validation on `salen` parameter. [Issue #752](https://github.com/c-ares/c-ares/issues/752)
29+
* cmake: Android requires C99. [PR #748](https://github.com/c-ares/c-ares/pull/748)
30+
* `ares_queue_wait_empty()` does not honor timeout_ms >= 0. [Issue #742](https://github.com/c-ares/c-ares/pull/742)
4131

42-
Thanks go to these friendly people for their efforts and contributions for this release:
32+
Thanks go to these friendly people for their efforts and contributions for this
33+
release:
4334

4435
* Brad House (@bradh352)
45-
* Cristian Rodríguez (@crrodriguez)
4636
* Daniel Stenberg (@bagder)
47-
* Faraz (@farazrbx)
48-
* Faraz Fallahi (@fffaraz)
37+
* David Hotham (@dimbleby)
38+
* Jiwoo Park (@jimmy-park)
4939
* Oliver Welsh (@oliverwelsh)
40+
* Volker Schlecht (@VlkrS)
41+
42+

deps/cares/SECURITY.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ announcement.
4343

4444
- If the report is rejected, the team writes to the reporter to explain why.
4545

46-
- If the report is accepted, the team writes to the reporter to let him/her
46+
- If the report is accepted, the team writes to the reporter to let them
4747
know it is accepted and that they are working on a fix.
4848

4949
- The security team discusses the problem, works out a fix, considers the

deps/cares/aminclude_static.am

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11

22
# aminclude_static.am generated automatically by Autoconf
3-
# from AX_AM_MACROS_STATIC on Sat Mar 30 16:17:17 CET 2024
3+
# from AX_AM_MACROS_STATIC on Fri May 24 08:50:03 CEST 2024
44

55

66
# Code coverage

deps/cares/cares.gyp

+11-1
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
'src/lib/ares__htable_strvp.h',
2222
'src/lib/ares__htable_szvp.c',
2323
'src/lib/ares__htable_szvp.h',
24+
'src/lib/ares__htable_vpvp.c',
25+
'src/lib/ares__htable_vpvp.h',
2426
'src/lib/ares__iface_ips.c',
2527
'src/lib/ares__iface_ips.h',
2628
'src/lib/ares__llist.c',
@@ -46,6 +48,7 @@
4648
'src/lib/ares_dns_record.c',
4749
'src/lib/ares_dns_private.h',
4850
'src/lib/ares_dns_write.c',
51+
'src/lib/ares_event_configchg.c',
4952
'src/lib/ares_event.h',
5053
'src/lib/ares_event_win32.h',
5154
'src/lib/ares_event_epoll.c',
@@ -113,6 +116,11 @@
113116
'src/tools/ares_getopt.c',
114117
'src/tools/ares_getopt.h',
115118
],
119+
'cares_sources_mac': [
120+
'config/darwin/ares_config.h',
121+
'src/lib/ares_sysconfig_mac.c',
122+
'src/lib/thirdparty/apple/dnsinfo.h',
123+
],
116124
'cares_sources_win': [
117125
'src/lib/config-win32.h',
118126
'src/lib/windows_port.c',
@@ -206,7 +214,9 @@
206214
}],
207215
[ 'OS=="mac" or OS=="ios"', {
208216
'include_dirs': [ 'config/darwin' ],
209-
'sources': [ 'config/darwin/ares_config.h' ]
217+
'sources': [
218+
'<@(cares_sources_mac)',
219+
]
210220
}],
211221
[ 'OS=="freebsd" or OS=="dragonflybsd"', {
212222
'include_dirs': [ 'config/freebsd' ],

deps/cares/configure

+11-84
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#! /bin/sh
22
# Guess values for system-dependent variables and create Makefiles.
3-
# Generated by GNU Autoconf 2.71 for c-ares 1.28.1.
3+
# Generated by GNU Autoconf 2.71 for c-ares 1.29.0.
44
#
55
# Report bugs to <c-ares mailing list: http://lists.haxx.se/listinfo/c-ares>.
66
#
@@ -621,8 +621,8 @@ MAKEFLAGS=
621621
# Identity of this package.
622622
PACKAGE_NAME='c-ares'
623623
PACKAGE_TARNAME='c-ares'
624-
PACKAGE_VERSION='1.28.1'
625-
PACKAGE_STRING='c-ares 1.28.1'
624+
PACKAGE_VERSION='1.29.0'
625+
PACKAGE_STRING='c-ares 1.29.0'
626626
PACKAGE_BUGREPORT='c-ares mailing list: http://lists.haxx.se/listinfo/c-ares'
627627
PACKAGE_URL=''
628628

@@ -1420,7 +1420,7 @@ if test "$ac_init_help" = "long"; then
14201420
# Omit some internal or obsolete options to make the list less imposing.
14211421
# This message is too long to be a string in the A/UX 3.1 sh.
14221422
cat <<_ACEOF
1423-
\`configure' configures c-ares 1.28.1 to adapt to many kinds of systems.
1423+
\`configure' configures c-ares 1.29.0 to adapt to many kinds of systems.
14241424

14251425
Usage: $0 [OPTION]... [VAR=VALUE]...
14261426

@@ -1491,7 +1491,7 @@ fi
14911491

14921492
if test -n "$ac_init_help"; then
14931493
case $ac_init_help in
1494-
short | recursive ) echo "Configuration of c-ares 1.28.1:";;
1494+
short | recursive ) echo "Configuration of c-ares 1.29.0:";;
14951495
esac
14961496
cat <<\_ACEOF
14971497

@@ -1627,7 +1627,7 @@ fi
16271627
test -n "$ac_init_help" && exit $ac_status
16281628
if $ac_init_version; then
16291629
cat <<\_ACEOF
1630-
c-ares configure 1.28.1
1630+
c-ares configure 1.29.0
16311631
generated by GNU Autoconf 2.71
16321632

16331633
Copyright (C) 2021 Free Software Foundation, Inc.
@@ -2251,7 +2251,7 @@ cat >config.log <<_ACEOF
22512251
This file contains any messages produced by compilers while
22522252
running configure, to aid debugging if configure makes a mistake.
22532253

2254-
It was created by c-ares $as_me 1.28.1, which was
2254+
It was created by c-ares $as_me 1.29.0, which was
22552255
generated by GNU Autoconf 2.71. Invocation command line was
22562256

22572257
$ $0$ac_configure_args_raw
@@ -3225,7 +3225,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
32253225

32263226

32273227

3228-
CARES_VERSION_INFO="15:1:13"
3228+
CARES_VERSION_INFO="16:0:14"
32293229

32303230

32313231

@@ -5907,7 +5907,7 @@ fi
59075907

59085908
# Define the identity of the package.
59095909
PACKAGE='c-ares'
5910-
VERSION='1.28.1'
5910+
VERSION='1.29.0'
59115911

59125912

59135913
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -20946,79 +20946,6 @@ esac
2094620946
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $need_xnet" >&5
2094720947
printf "%s\n" "$need_xnet" >&6; }
2094820948

20949-
if test "x$host_vendor" = "xapple"
20950-
then :
20951-
20952-
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing res_servicename" >&5
20953-
printf %s "checking for library containing res_servicename... " >&6; }
20954-
if test ${ac_cv_search_res_servicename+y}
20955-
then :
20956-
printf %s "(cached) " >&6
20957-
else $as_nop
20958-
ac_func_search_save_LIBS=$LIBS
20959-
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
20960-
/* end confdefs.h. */
20961-
20962-
/* Override any GCC internal prototype to avoid an error.
20963-
Use char because int might match the return type of a GCC
20964-
builtin and then its argument prototype would still apply. */
20965-
char res_servicename ();
20966-
int
20967-
main (void)
20968-
{
20969-
return res_servicename ();
20970-
;
20971-
return 0;
20972-
}
20973-
_ACEOF
20974-
for ac_lib in '' resolv
20975-
do
20976-
if test -z "$ac_lib"; then
20977-
ac_res="none required"
20978-
else
20979-
ac_res=-l$ac_lib
20980-
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
20981-
fi
20982-
if ac_fn_c_try_link "$LINENO"
20983-
then :
20984-
ac_cv_search_res_servicename=$ac_res
20985-
fi
20986-
rm -f core conftest.err conftest.$ac_objext conftest.beam \
20987-
conftest$ac_exeext
20988-
if test ${ac_cv_search_res_servicename+y}
20989-
then :
20990-
break
20991-
fi
20992-
done
20993-
if test ${ac_cv_search_res_servicename+y}
20994-
then :
20995-
20996-
else $as_nop
20997-
ac_cv_search_res_servicename=no
20998-
fi
20999-
rm conftest.$ac_ext
21000-
LIBS=$ac_func_search_save_LIBS
21001-
fi
21002-
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_res_servicename" >&5
21003-
printf "%s\n" "$ac_cv_search_res_servicename" >&6; }
21004-
ac_res=$ac_cv_search_res_servicename
21005-
if test "$ac_res" != no
21006-
then :
21007-
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
21008-
21009-
21010-
printf "%s\n" "#define CARES_USE_LIBRESOLV 1" >>confdefs.h
21011-
21012-
21013-
else $as_nop
21014-
21015-
as_fn_error $? "Unable to find libresolv which is required for iPhone targets" "$LINENO" 5
21016-
21017-
fi
21018-
21019-
21020-
fi
21021-
2102220949
if test "x$host_vendor" = "xibm" -a "x$host_os" = "xopenedition"
2102320950
then :
2102420951

@@ -25956,7 +25883,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
2595625883
# report actual input values of CONFIG_FILES etc. instead of their
2595725884
# values after options handling.
2595825885
ac_log="
25959-
This file was extended by c-ares $as_me 1.28.1, which was
25886+
This file was extended by c-ares $as_me 1.29.0, which was
2596025887
generated by GNU Autoconf 2.71. Invocation command line was
2596125888

2596225889
CONFIG_FILES = $CONFIG_FILES
@@ -26024,7 +25951,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
2602425951
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
2602525952
ac_cs_config='$ac_cs_config_escaped'
2602625953
ac_cs_version="\\
26027-
c-ares config.status 1.28.1
25954+
c-ares config.status 1.29.0
2602825955
configured by $0, generated by GNU Autoconf 2.71,
2602925956
with options \\"\$ac_cs_config\\"
2603025957

deps/cares/configure.ac

+2-11
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ dnl Copyright (C) The c-ares project and its contributors
22
dnl SPDX-License-Identifier: MIT
33
AC_PREREQ([2.69])
44

5-
AC_INIT([c-ares], [1.28.1],
5+
AC_INIT([c-ares], [1.29.0],
66
[c-ares mailing list: http://lists.haxx.se/listinfo/c-ares])
77

8-
CARES_VERSION_INFO="15:1:13"
8+
CARES_VERSION_INFO="16:0:14"
99
dnl This flag accepts an argument of the form current[:revision[:age]]. So,
1010
dnl passing -version-info 3:12:1 sets current to 3, revision to 12, and age to
1111
dnl 1.
@@ -334,15 +334,6 @@ case $host_os in
334334
esac
335335
AC_MSG_RESULT($need_xnet)
336336

337-
dnl resolv lib for Apple (MacOS and iOS)
338-
AS_IF([test "x$host_vendor" = "xapple"], [
339-
AC_SEARCH_LIBS([res_servicename], [resolv], [
340-
AC_DEFINE([CARES_USE_LIBRESOLV], [1], [Use resolver library to configure cares])
341-
], [
342-
AC_MSG_ERROR([Unable to find libresolv which is required for iPhone targets])
343-
])
344-
])
345-
346337
dnl resolv lib for z/OS
347338
AS_IF([test "x$host_vendor" = "xibm" -a "x$host_os" = "xopenedition" ], [
348339
AC_SEARCH_LIBS([res_init], [resolv], [

deps/cares/docs/Makefile.in

+1
Original file line numberDiff line numberDiff line change
@@ -460,6 +460,7 @@ MANPAGES = ares_cancel.3 \
460460
ares_set_local_dev.3 \
461461
ares_set_local_ip4.3 \
462462
ares_set_local_ip6.3 \
463+
ares_set_server_state_callback.3 \
463464
ares_set_servers.3 \
464465
ares_set_servers_csv.3 \
465466
ares_set_servers_ports.3 \

0 commit comments

Comments
 (0)