|
1 |
| -c-ares version 1.17.1 |
| 1 | +c-ares version 1.17.2 |
2 | 2 |
|
3 |
| -Due to a packaging issue with 1.17.0, we have released 1.17.1 to address that |
4 |
| -issue. See 1.17.0 release notes below.. |
5 |
| - |
6 |
| - |
7 |
| -c-ares version 1.17.0 |
| 3 | +This is a security and bugfix release. It addresses a few security related |
| 4 | +issues along with various bugfixes mostly related to portability. |
8 | 5 |
|
9 | 6 | Security:
|
10 |
| - o avoid read-heap-buffer-overflow in ares_parse_soa_reply found during |
11 |
| - fuzzing [2] [3] |
12 |
| - o Avoid theoretical buffer overflow in RC4 loop comparison [5] |
13 |
| - o Empty hquery->name could lead to invalid memory access [15] |
14 |
| - o ares_parse_{a,aaaa}_reply() could return a larger *naddrttls than was |
15 |
| - passed in [17] |
| 7 | + o NodeJS passes NULL for addr and 0 for addrlen to ares_parse_ptr_reply() on |
| 8 | + systems where malloc(0) returns NULL. This would cause a crash. [8] |
| 9 | + o When building c-ares with CMake, the RANDOM_FILE would not be set and |
| 10 | + therefore downgrade to the less secure random number generator [12] |
| 11 | + o If ares_getaddrinfo() was terminated by an ares_destroy(), it would cause |
| 12 | + a crash [13] |
| 13 | + o Crash in sortaddrinfo() if the list size equals 0 due to an unexpected |
| 14 | + DNS response [14] |
| 15 | + o Expand number of escaped characters in DNS replies as per RFC1035 5.1 to |
| 16 | + prevent spoofing [16], [17] |
| 17 | + o Perform validation on hostnames to prevent possible XSS due to applications |
| 18 | + not performing valiation themselves [18] |
16 | 19 |
|
17 | 20 | Changes:
|
18 |
| - o Update help information for adig, acountry, and ahost [4] |
19 |
| - o Test Suite now uses dynamic system-assigned ports rather than hardcoded |
20 |
| - ports to prevent failures in containers [10] |
21 |
| - o Detect remote DNS server does not support EDNS using rules from RFC 6891 [12] |
22 |
| - o Source tree has been reorganized to use a more modern layout [13] |
23 |
| - o Allow parsing of CAA Resource Record [14] |
| 21 | + o Use non-blocking /dev/urandom for random data to prevent early startup |
| 22 | + performance issues [5] |
| 23 | + o z/OS port [6] |
| 24 | + o ares_malloc(0) is now defined behavior (returns NULL) rather than |
| 25 | + system-specific to catch edge cases [7] |
24 | 26 |
|
25 | 27 | Bug fixes:
|
26 |
| - o readaddrinfo bad sizeof() [1] |
27 |
| - o Test cases should honor HAVE_WRITEV flag, not depend on WIN32 [6] |
28 |
| - o FQDN with trailing period should be queried first [7] |
29 |
| - o ares_getaddrinfo() was returning members of the struct as garbage values if |
30 |
| - unset, and was not honoring ai_socktype and ai_protocol hints. [8] [9] |
31 |
| - o ares_gethostbyname() with AF_UNSPEC and an ip address would fail [11] |
32 |
| - o Properly document ares_set_local_ip4() uses host byte order [16] |
| 28 | + o Fuzz testing files were not distributed with official archives [1] |
| 29 | + o Building tests should not force building of static libraries except on |
| 30 | + Windows [2] |
| 31 | + o Windows builds of the tools would fail if built as static due to a missing |
| 32 | + CARES_STATICLIB definition [3] |
| 33 | + o Relative headers must use double quotes to prevent pulling in a system |
| 34 | + library [4] |
| 35 | + o Fix OpenBSD building by implementing portability updates for including |
| 36 | + arpa/nameser.h [9] |
| 37 | + o Fix building out-of-tree for autotools [10] |
| 38 | + o Make install on MacOS/iOS with CMake was missing the bundle destination so |
| 39 | + libraries weren't actually installed [11] |
| 40 | + o Fix retrieving DNS server configuration on MacOS and iOS if the configuration |
| 41 | + did not include search domains [15] |
| 42 | + o ares_parse_a_reply and ares_parse_aaa_reply were erroneously using strdup() |
| 43 | + instead of ares_strdup() [19] |
| 44 | + |
33 | 45 |
|
34 | 46 | Thanks go to these friendly people for their efforts and contributions:
|
35 |
| - @anonymoushelpishere |
36 |
| - Anthony Penniston (@apenn-msft) |
| 47 | + Anton Danielsson (@anton-danielsson) |
37 | 48 | Brad House (@bradh352)
|
38 |
| - Bulat Gaifullin (@bgaifullin) |
39 |
| - Daniela Sonnenschein (@lxdicted) |
40 | 49 | Daniel Stenberg (@bagder)
|
41 |
| - David Hotham (@dimbleby) |
42 |
| - Fionn Fitzmaurice (@fionn) |
43 |
| - Gisle Vanem (@gavenm) |
44 |
| - Ivan Baidakou (@basiliscos) |
45 |
| - Jonathan Maye-Hobbs (@wheelpharoah) |
46 |
| - Łukasz Marszał (@lmarszal) |
47 |
| - lutianxiong (@ltx2018) |
48 |
| - Seraphime Kirkovski (@Seraphime) |
49 |
| -(14 contributors) |
| 50 | + Dhrumil Rana (@dhrumilrana) |
| 51 | + František Dvořák (@valtri) |
| 52 | + @halx99 |
| 53 | + Jay Freeman (@saurik) |
| 54 | + Jean-pierre Cartal (@jeanpierrecartal) |
| 55 | + Michael Kourlas |
| 56 | + Philipp Jeitner |
| 57 | + @vburdo |
| 58 | +(11 contributors) |
50 | 59 |
|
51 | 60 | References to bug reports and discussions on issues:
|
52 |
| - [1] = https://github.com/c-ares/c-ares/pull/331 |
53 |
| - [2] = https://github.com/c-ares/c-ares/pull/332 |
54 |
| - [3] = https://github.com/c-ares/c-ares/issues/333 |
55 |
| - [4] = https://github.com/c-ares/c-ares/pull/334 |
56 |
| - [5] = https://github.com/c-ares/c-ares/pull/336 |
57 |
| - [6] = https://github.com/c-ares/c-ares/pull/344 |
58 |
| - [7] = https://github.com/c-ares/c-ares/pull/345 |
59 |
| - [8] = https://github.com/c-ares/c-ares/issues/343 |
60 |
| - [9] = https://github.com/c-ares/c-ares/issues/317 |
61 |
| - [10] = https://github.com/c-ares/c-ares/pull/346 |
62 |
| - [11] = https://github.com/c-ares/c-ares/pull/204 |
63 |
| - [12] = https://github.com/c-ares/c-ares/pull/244 |
64 |
| - [13] = https://github.com/c-ares/c-ares/pull/349 |
65 |
| - [14] = https://github.com/c-ares/c-ares/pull/360 |
66 |
| - [15] = https://github.com/c-ares/c-ares/pull/367 |
67 |
| - [16] = https://github.com/c-ares/c-ares/pull/368 |
68 |
| - [17] = https://github.com/c-ares/c-ares/issues/371 |
| 61 | + [1] = https://github.com/c-ares/c-ares/issues/379 |
| 62 | + [2] = https://github.com/c-ares/c-ares/issues/380 |
| 63 | + [3] = https://github.com/c-ares/c-ares/issues/384 |
| 64 | + [4] = https://github.com/c-ares/c-ares/pull/386 |
| 65 | + [5] = https://github.com/c-ares/c-ares/pull/391 |
| 66 | + [6] = https://github.com/c-ares/c-ares/pull/390 |
| 67 | + [7] = https://github.com/c-ares/c-ares/commit/485fb66 |
| 68 | + [8] = https://github.com/c-ares/c-ares/issues/392 |
| 69 | + [9] = https://github.com/c-ares/c-ares/issues/388 |
| 70 | + [10] = https://github.com/c-ares/c-ares/pull/394 |
| 71 | + [11] = https://github.com/c-ares/c-ares/pull/395 |
| 72 | + [12] = https://github.com/c-ares/c-ares/pull/397 |
| 73 | + [13] = https://github.com/c-ares/c-ares/commit/df94703 |
| 74 | + [14] = https://github.com/c-ares/c-ares/pull/400 |
| 75 | + [15] = https://github.com/c-ares/c-ares/pull/401 |
| 76 | + [16] = https://github.com/c-ares/c-ares/commit/362f91d |
| 77 | + [17] = https://github.com/c-ares/c-ares/commit/44c009b |
| 78 | + [18] = https://github.com/c-ares/c-ares/commit/c9b6c60 |
| 79 | + [19] = https://github.com/c-ares/c-ares/pull/408 |
0 commit comments