Prep for 1.19.0 release
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4a0c6aa..7a29fef 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -8,7 +8,7 @@
INCLUDE (CheckStructHasMember)
INCLUDE (CheckLibraryExists)
-PROJECT (c-ares LANGUAGES C VERSION "1.18.0" )
+PROJECT (c-ares LANGUAGES C VERSION "1.19.0" )
# Set this version before release
SET (CARES_VERSION "${PROJECT_VERSION}")
@@ -26,7 +26,7 @@
# For example, a version of 4:0:2 would generate output such as:
# libname.so -> libname.so.2
# libname.so.2 -> libname.so.2.2.0
-SET (CARES_LIB_VERSIONINFO "7:1:5")
+SET (CARES_LIB_VERSIONINFO "8:0:6")
OPTION (CARES_STATIC "Build as a static library" OFF)
diff --git a/RELEASE-NOTES b/RELEASE-NOTES
index d095749..db70590 100644
--- a/RELEASE-NOTES
+++ b/RELEASE-NOTES
@@ -1,85 +1,91 @@
-c-ares version 1.18.1
-
-This is an urgent bugfix release for a regression made in 1.18.0.
-
-Bug fixes:
- o ares_getaddrinfo() would return ai_addrlen of 16 for ipv6
- adddresses rather than the sizeof(struct sockaddr_in6)
-
-
-
-c-ares version 1.18.0
+c-ares version 1.19.0
This is a feature and bugfix release. It addresses a couple of new feature
requests as well as a couple of bug fixes.
+Security:
+ o Low. Stack overflow in ares_set_sortlist() which is used during c-ares
+ initialization and typically provided by an administrator and not an
+ end user. [24]
+
Changes:
- o Add support for URI(Uniform Resource Identifier) records via
- ares_parse_uri_reply() [1]
- o Provide ares_nameser.h as a public interface as needed by NodeJS [5]
- o Update URLs from c-ares.haxx.se to c-ares.org [9]
- o During a domain search, treat ARES_ENODATA as ARES_NXDOMAIN so that the
- search process will continue to the next domain in the search. [11]
- o Turn ares_gethostbyname() into a wrapper for ares_getaddrinfo() as they
- followed very similar code paths and ares_gethostbyaddr() has some more
- desirable features such as priority sorting and parallel queries for
- AF_UNSPEC. [12]
- o ares_getaddrinfo() now contains a name element in the address info
- structure as the last element. This is not an API or ABI break due to
- the structure always being internally allocated and it being the last
- element. [12]
- o ares_parse_a_reply() and ares_parse_aaaa_reply() were nearly identical, those
- now use the same helper functions for parsing rather than having their own
- code. [12]
- o RFC6761 Section 6.3 says "localhost" lookups need to be special cased to
- return loopback addresses, and not forward queries to recursive dns servers.
- On Windows this now returns all loopback addresses, on other systems it
- returns 127.0.0.1 or ::1 always, and will never forward a request for
- "localhost" to outside DNS servers. [13]
- o Haiki: port [14]
+ o Windows: Drop support for XP and derivatives which greatly cleans up
+ initialization code. [3]
+ o Add ARES_OPT_HOSTS_FILE similar to ARES_OPT_RESOLVCONF for specifying a
+ custom hosts file location. [10]
+ o Add vcpkg installation instructions [13]
Bug fixes:
- o add build to .gitignore [2]
- o z/OS minor update, add missing semicolon in ares_init.c [3]
- o Fix building when latest ax_code_coverage.m4 is imported [4]
- o Work around autotools 'error: too many loops' and other newer autotools
- import related bugs.
- o MinGW cross builds need advapi32 link as lower case [6]
- o Cygwin build fix due to containing both socket.h and winsock2.h [7]
- o ares_expand_name should allow underscores (_) as SRV records legitimately use
- them [8]
- o Allow '/' as a valid character for a returned name for CNAME in-addr.arpa
- delegation [10]
- o ares_getaddrinfo() was not honoring HOSTALIASES [12]
- o ares_getaddrinfo() had some test cases disabled due to a bug in the test
- framework itself which has now been resolved [12]
- o Due to Travis-CI becoming unfriendly to open-source, Cirrus-CI has now been
- brought online for automated unit testing.
+ o Fix cross-compilation from Windows to Linux due to CPACK logic. [1]
+ o Fix memory leak in reading /etc/hosts when using localhost fallback. [2]
+ o Fix chain building c-ares when libresolv is already included by another
+ project [4]
+ o File lookup should not immediately abort as there may be other tries due to
+ search criteria.
+ o Asterisks should be allowed in host validation as CNAMEs may reference
+ wildcard domains [5]
+ o AutoTools build system referenced bad STDC_HEADERS macro [6]
+ o Even if one address class returns a failure for ares_getaddrinfo() we should
+ still return the results we have
+ o CMake Windows: DLLs did not include resource file to include versions [7] [8]
+ o CMake: Guard target creation in exported config [9]
+ o Fix ares_getaddrinfo() numerical address resolution with AF_UNSPEC [11]
+ o Apple: fix libresolv configured query times. [12]
+ o Fix tools and help information [14] [15]
+ o Various documentation fixes and cleanups [16] [22] [25]
+ o Add include guards to ares_data.h [17]
+ o c-ares could try to exceed maximum number of iovec entries supported by
+ system [18]
+ o CMake package config generation allow for absolute install paths [19]
+ o Intel compiler fixes [20]
+ o ares_strsplit bugs [21] [23]
+ o The RFC6761 6.3 states localhost subdomains must be offline too. [26]
Thanks go to these friendly people for their efforts and contributions:
- Biswapriyo Nath (@Biswa96)
+ Boby Reynolds (@reynoldsbd)
Brad House (@bradh352)
- Daniel Bevenius (@danbev)
+ Brad Spencer (@b-spencer)
+ @bsergean
Daniel Stenberg (@bagder)
- Dhrumil Rana (@dhrumilrana)
- Felix Yan (@felixonmars)
- Jérôme Duval (@korli)
- Martin Holeš (@martin-256)
- Sinan Kaya
-(9 contributors)
+ Dmitry Karpov
+ @FrankXie05
+ @hopper-vul
+ Jonathan Ringer (@jonringer)
+ Kai Pastor (@dg0yt)
+ @lifenjoiner
+ Manish Mehra (@mmehra)
+ @marc-groundctl
+ Nikolaos Chatzikonstantinou (@createyourpersonalaccount)
+ Ridge Kennedy (@ridgek)
+ Sam James (@thesamesam)
+ Stephen Sachs (@stephenmsachs)
+ Thomas Dreibholz (@dreibh)
+(18 contributors)
References to bug reports and discussions on issues:
- [1] = https://github.com/c-ares/c-ares/pull/411
- [2] = https://github.com/c-ares/c-ares/pull/410
- [3] = https://github.com/c-ares/c-ares/pull/414
- [4] = https://github.com/c-ares/c-ares/pull/418
- [5] = https://github.com/c-ares/c-ares/pull/417
- [6] = https://github.com/c-ares/c-ares/pull/420
- [7] = https://github.com/c-ares/c-ares/pull/422
- [8] = https://github.com/c-ares/c-ares/issues/424
- [9] = https://github.com/c-ares/c-ares/issues/423
- [10] = https://github.com/c-ares/c-ares/issues/427
- [11] = https://github.com/c-ares/c-ares/issues/426
- [12] = https://github.com/c-ares/c-ares/pull/428
- [13] = https://github.com/c-ares/c-ares/pull/430
- [14] = https://github.com/c-ares/c-ares/pull/431
+ [1] = https://github.com/c-ares/c-ares/pull/436
+ [2] = https://github.com/c-ares/c-ares/issues/439
+ [3] = https://github.com/c-ares/c-ares/pull/445
+ [4] = https://github.com/c-ares/c-ares/pull/451
+ [5] = https://github.com/c-ares/c-ares/issues/457
+ [6] = https://github.com/c-ares/c-ares/pull/459
+ [7] = https://github.com/c-ares/c-ares/issues/460
+ [8] = https://github.com/c-ares/c-ares/pull/468
+ [9] = https://github.com/c-ares/c-ares/pull/464
+ [10] = https://github.com/c-ares/c-ares/pull/465
+ [11] = https://github.com/c-ares/c-ares/pull/469
+ [12] = https://github.com/c-ares/c-ares/pull/467
+ [13] = https://github.com/c-ares/c-ares/pull/478
+ [14] = https://github.com/c-ares/c-ares/pull/479
+ [15] = https://github.com/c-ares/c-ares/pull/481
+ [16] = https://github.com/c-ares/c-ares/pull/490
+ [17] = https://github.com/c-ares/c-ares/pull/491
+ [18] = https://github.com/c-ares/c-ares/pull/489
+ [19] = https://github.com/c-ares/c-ares/pull/486
+ [20] = https://github.com/c-ares/c-ares/pull/485
+ [21] = https://github.com/c-ares/c-ares/pull/492
+ [22] = https://github.com/c-ares/c-ares/pull/494
+ [23] = https://github.com/c-ares/c-ares/pull/495
+ [24] = https://github.com/c-ares/c-ares/pull/497
+ [25] = https://github.com/c-ares/c-ares/issues/487
+ [26] = https://github.com/c-ares/c-ares/issues/477
diff --git a/configure.ac b/configure.ac
index 10d4ab1..56a570b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,9 +1,9 @@
AC_PREREQ([2.60])
-AC_INIT([c-ares], [1.18.1],
+AC_INIT([c-ares], [1.19.0],
[c-ares mailing list: http://lists.haxx.se/listinfo/c-ares])
-CARES_VERSION_INFO="7:1:5"
+CARES_VERSION_INFO="8:0:6"
dnl This flag accepts an argument of the form current[:revision[:age]]. So,
dnl passing -version-info 3:12:1 sets current to 3, revision to 12, and age to
dnl 1.
diff --git a/include/ares_version.h b/include/ares_version.h
index 22c6f62..4d8d62f 100644
--- a/include/ares_version.h
+++ b/include/ares_version.h
@@ -6,12 +6,12 @@
#define ARES_COPYRIGHT "2004 - 2021 Daniel Stenberg, <daniel@haxx.se>."
#define ARES_VERSION_MAJOR 1
-#define ARES_VERSION_MINOR 18
-#define ARES_VERSION_PATCH 1
+#define ARES_VERSION_MINOR 19
+#define ARES_VERSION_PATCH 0
#define ARES_VERSION ((ARES_VERSION_MAJOR<<16)|\
(ARES_VERSION_MINOR<<8)|\
(ARES_VERSION_PATCH))
-#define ARES_VERSION_STR "1.18.1"
+#define ARES_VERSION_STR "1.19.0"
#if (ARES_VERSION >= 0x010700)
# define CARES_HAVE_ARES_LIBRARY_INIT 1