@cpp.js/package-expat 1.0.0-beta.23 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/README.md +1 -1
- package/dist/prebuilt/Android-arm64-v8a/include/expat.h +3 -3
- package/dist/prebuilt/Android-arm64-v8a/include/expat_config.h +3 -3
- package/dist/prebuilt/Android-arm64-v8a/lib/cmake/{expat-2.6.4 → expat-2.7.1}/expat-config-version.cmake +3 -3
- package/dist/prebuilt/{Android-x86_64/lib/cmake/expat-2.6.4 → Android-arm64-v8a/lib/cmake/expat-2.7.1}/expat-noconfig.cmake +2 -2
- package/dist/prebuilt/{Emscripten-x86_64/lib/cmake/expat-2.6.4 → Android-arm64-v8a/lib/cmake/expat-2.7.1}/expat.cmake +2 -2
- package/dist/prebuilt/Android-arm64-v8a/lib/libexpat.la +2 -2
- package/dist/prebuilt/Android-arm64-v8a/lib/libexpat.so +0 -0
- package/dist/prebuilt/Android-arm64-v8a/lib/pkgconfig/expat.pc +1 -1
- package/dist/prebuilt/Android-arm64-v8a/share/doc/expat/changelog +121 -2
- package/dist/prebuilt/Android-x86_64/include/expat.h +3 -3
- package/dist/prebuilt/Android-x86_64/include/expat_config.h +3 -3
- package/dist/prebuilt/{iOS-iphonesimulator/lib/cmake/expat-2.6.4 → Android-x86_64/lib/cmake/expat-2.7.1}/expat-config-version.cmake +3 -3
- package/dist/prebuilt/{Emscripten-x86_64/lib/cmake/expat-2.6.4 → Android-x86_64/lib/cmake/expat-2.7.1}/expat-noconfig.cmake +2 -2
- package/dist/prebuilt/Android-x86_64/lib/cmake/{expat-2.6.4 → expat-2.7.1}/expat.cmake +2 -2
- package/dist/prebuilt/Android-x86_64/lib/libexpat.la +2 -2
- package/dist/prebuilt/Android-x86_64/lib/libexpat.so +0 -0
- package/dist/prebuilt/Android-x86_64/lib/pkgconfig/expat.pc +1 -1
- package/dist/prebuilt/Android-x86_64/share/doc/expat/changelog +121 -2
- package/dist/prebuilt/Emscripten-x86_64/include/expat.h +3 -3
- package/dist/prebuilt/Emscripten-x86_64/include/expat_config.h +3 -3
- package/dist/prebuilt/Emscripten-x86_64/lib/cmake/{expat-2.6.4 → expat-2.7.1}/expat-config-version.cmake +3 -3
- package/dist/prebuilt/{Android-arm64-v8a/lib/cmake/expat-2.6.4 → Emscripten-x86_64/lib/cmake/expat-2.7.1}/expat-noconfig.cmake +2 -2
- package/dist/prebuilt/{iOS-iphoneos/lib/cmake/expat-2.6.4 → Emscripten-x86_64/lib/cmake/expat-2.7.1}/expat.cmake +2 -2
- package/dist/prebuilt/Emscripten-x86_64/lib/libexpat.a +0 -0
- package/dist/prebuilt/Emscripten-x86_64/lib/libexpat.la +2 -2
- package/dist/prebuilt/Emscripten-x86_64/lib/pkgconfig/expat.pc +1 -1
- package/dist/prebuilt/Emscripten-x86_64/share/doc/expat/changelog +121 -2
- package/dist/prebuilt/iOS-iphoneos/include/expat.h +3 -3
- package/dist/prebuilt/iOS-iphoneos/include/expat_config.h +3 -3
- package/dist/prebuilt/{Android-x86_64/lib/cmake/expat-2.6.4 → iOS-iphoneos/lib/cmake/expat-2.7.1}/expat-config-version.cmake +3 -3
- package/dist/prebuilt/{iOS-iphonesimulator/lib/cmake/expat-2.6.4 → iOS-iphoneos/lib/cmake/expat-2.7.1}/expat-noconfig.cmake +2 -2
- package/dist/prebuilt/{Android-arm64-v8a/lib/cmake/expat-2.6.4 → iOS-iphoneos/lib/cmake/expat-2.7.1}/expat.cmake +2 -2
- package/dist/prebuilt/iOS-iphoneos/lib/libexpat.a +0 -0
- package/dist/prebuilt/iOS-iphoneos/lib/libexpat.la +2 -2
- package/dist/prebuilt/iOS-iphoneos/lib/pkgconfig/expat.pc +1 -1
- package/dist/prebuilt/iOS-iphoneos/share/doc/expat/changelog +121 -2
- package/dist/prebuilt/iOS-iphonesimulator/include/expat.h +3 -3
- package/dist/prebuilt/iOS-iphonesimulator/include/expat_config.h +3 -3
- package/dist/prebuilt/{iOS-iphoneos/lib/cmake/expat-2.6.4 → iOS-iphonesimulator/lib/cmake/expat-2.7.1}/expat-config-version.cmake +3 -3
- package/dist/prebuilt/{iOS-iphoneos/lib/cmake/expat-2.6.4 → iOS-iphonesimulator/lib/cmake/expat-2.7.1}/expat-noconfig.cmake +2 -2
- package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/expat-2.7.1/expat.cmake +107 -0
- package/dist/prebuilt/iOS-iphonesimulator/lib/libexpat.a +0 -0
- package/dist/prebuilt/iOS-iphonesimulator/lib/libexpat.la +2 -2
- package/dist/prebuilt/iOS-iphonesimulator/lib/pkgconfig/expat.pc +1 -1
- package/dist/prebuilt/iOS-iphonesimulator/share/doc/expat/changelog +121 -2
- package/expat.xcframework/ios-arm64_arm64e/Headers/expat.h +3 -3
- package/expat.xcframework/ios-arm64_arm64e/Headers/expat_config.h +3 -3
- package/expat.xcframework/ios-arm64_arm64e/libexpat.a +0 -0
- package/expat.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/expat.h +3 -3
- package/expat.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/expat_config.h +3 -3
- package/expat.xcframework/ios-arm64_arm64e_x86_64-simulator/libexpat.a +0 -0
- package/package.json +3 -3
- package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/expat-2.6.4/expat.cmake +0 -107
- /package/dist/prebuilt/Android-arm64-v8a/lib/cmake/{expat-2.6.4 → expat-2.7.1}/expat-config.cmake +0 -0
- /package/dist/prebuilt/Android-x86_64/lib/cmake/{expat-2.6.4 → expat-2.7.1}/expat-config.cmake +0 -0
- /package/dist/prebuilt/Emscripten-x86_64/lib/cmake/{expat-2.6.4 → expat-2.7.1}/expat-config.cmake +0 -0
- /package/dist/prebuilt/iOS-iphoneos/lib/cmake/{expat-2.6.4 → expat-2.7.1}/expat-config.cmake +0 -0
- /package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/{expat-2.6.4 → expat-2.7.1}/expat-config.cmake +0 -0
package/CHANGELOG.md
CHANGED
package/README.md
CHANGED
|
@@ -47,4 +47,4 @@ std::string Native::sample() {
|
|
|
47
47
|
## License
|
|
48
48
|
This project includes the precompiled expat library, which is distributed under the [MIT License](https://github.com/libexpat/libexpat/blob/master/COPYING).
|
|
49
49
|
|
|
50
|
-
Expat Homepage:
|
|
50
|
+
Expat Homepage: [https://github.com/libexpat/libexpat](https://github.com/libexpat/libexpat)
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
Copyright (c) 2000-2005 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
|
12
12
|
Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net>
|
|
13
13
|
Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
|
|
14
|
-
Copyright (c) 2016-
|
|
14
|
+
Copyright (c) 2016-2025 Sebastian Pipping <sebastian@pipping.org>
|
|
15
15
|
Copyright (c) 2016 Cristian Rodríguez <crrodriguez@opensuse.org>
|
|
16
16
|
Copyright (c) 2016 Thomas Beutlich <tc@tbeu.de>
|
|
17
17
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
|
@@ -1067,8 +1067,8 @@ XML_SetReparseDeferralEnabled(XML_Parser parser, XML_Bool enabled);
|
|
|
1067
1067
|
See https://semver.org
|
|
1068
1068
|
*/
|
|
1069
1069
|
#define XML_MAJOR_VERSION 2
|
|
1070
|
-
#define XML_MINOR_VERSION
|
|
1071
|
-
#define XML_MICRO_VERSION
|
|
1070
|
+
#define XML_MINOR_VERSION 7
|
|
1071
|
+
#define XML_MICRO_VERSION 1
|
|
1072
1072
|
|
|
1073
1073
|
#ifdef __cplusplus
|
|
1074
1074
|
}
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
#define PACKAGE_NAME "expat"
|
|
84
84
|
|
|
85
85
|
/* Define to the full name and version of this package. */
|
|
86
|
-
#define PACKAGE_STRING "expat 2.
|
|
86
|
+
#define PACKAGE_STRING "expat 2.7.1"
|
|
87
87
|
|
|
88
88
|
/* Define to the one symbol short name of this package. */
|
|
89
89
|
#define PACKAGE_TARNAME "expat"
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
#define PACKAGE_URL ""
|
|
93
93
|
|
|
94
94
|
/* Define to the version of this package. */
|
|
95
|
-
#define PACKAGE_VERSION "2.
|
|
95
|
+
#define PACKAGE_VERSION "2.7.1"
|
|
96
96
|
|
|
97
97
|
/* Define to 1 if all of the C90 standard headers exist (not just the ones
|
|
98
98
|
required in a freestanding environment). This macro is provided for
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
#define STDC_HEADERS 1
|
|
101
101
|
|
|
102
102
|
/* Version number of package */
|
|
103
|
-
#define VERSION "2.
|
|
103
|
+
#define VERSION "2.7.1"
|
|
104
104
|
|
|
105
105
|
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
|
|
106
106
|
significant byte first (like Motorola and SPARC, unlike Intel). */
|
|
@@ -9,19 +9,19 @@
|
|
|
9
9
|
# The variable CVF_VERSION must be set before calling configure_file().
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
set(PACKAGE_VERSION "2.
|
|
12
|
+
set(PACKAGE_VERSION "2.7.1")
|
|
13
13
|
|
|
14
14
|
if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)
|
|
15
15
|
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
|
16
16
|
else()
|
|
17
17
|
|
|
18
|
-
if("2.
|
|
18
|
+
if("2.7.1" MATCHES "^([0-9]+)\\.")
|
|
19
19
|
set(CVF_VERSION_MAJOR "${CMAKE_MATCH_1}")
|
|
20
20
|
if(NOT CVF_VERSION_MAJOR VERSION_EQUAL 0)
|
|
21
21
|
string(REGEX REPLACE "^0+" "" CVF_VERSION_MAJOR "${CVF_VERSION_MAJOR}")
|
|
22
22
|
endif()
|
|
23
23
|
else()
|
|
24
|
-
set(CVF_VERSION_MAJOR "2.
|
|
24
|
+
set(CVF_VERSION_MAJOR "2.7.1")
|
|
25
25
|
endif()
|
|
26
26
|
|
|
27
27
|
if(PACKAGE_FIND_VERSION_RANGE)
|
|
@@ -8,12 +8,12 @@ set(CMAKE_IMPORT_FILE_VERSION 1)
|
|
|
8
8
|
# Import target "expat::expat" for configuration "NoConfig"
|
|
9
9
|
set_property(TARGET expat::expat APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG)
|
|
10
10
|
set_target_properties(expat::expat PROPERTIES
|
|
11
|
-
IMPORTED_LOCATION_NOCONFIG "${_IMPORT_PREFIX}/lib/libexpat.so.1.10.
|
|
11
|
+
IMPORTED_LOCATION_NOCONFIG "${_IMPORT_PREFIX}/lib/libexpat.so.1.10.2"
|
|
12
12
|
IMPORTED_SONAME_NOCONFIG "libexpat.so.1"
|
|
13
13
|
)
|
|
14
14
|
|
|
15
15
|
list(APPEND _cmake_import_check_targets expat::expat )
|
|
16
|
-
list(APPEND _cmake_import_check_files_for_expat::expat "${_IMPORT_PREFIX}/lib/libexpat.so.1.10.
|
|
16
|
+
list(APPEND _cmake_import_check_files_for_expat::expat "${_IMPORT_PREFIX}/lib/libexpat.so.1.10.2" )
|
|
17
17
|
|
|
18
18
|
# Commands beyond this point should not need to know the version.
|
|
19
19
|
set(CMAKE_IMPORT_FILE_VERSION)
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# Generated by CMake
|
|
2
2
|
|
|
3
3
|
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
|
|
4
|
-
message(FATAL_ERROR "CMake >= 2.8.
|
|
4
|
+
message(FATAL_ERROR "CMake >= 2.8.12 required")
|
|
5
5
|
endif()
|
|
6
6
|
if(CMAKE_VERSION VERSION_LESS "2.8.12")
|
|
7
7
|
message(FATAL_ERROR "CMake >= 2.8.12 required")
|
|
8
8
|
endif()
|
|
9
9
|
cmake_policy(PUSH)
|
|
10
|
-
cmake_policy(VERSION 2.8.12...3.
|
|
10
|
+
cmake_policy(VERSION 2.8.12...3.29)
|
|
11
11
|
#----------------------------------------------------------------
|
|
12
12
|
# Generated CMake target import file.
|
|
13
13
|
#----------------------------------------------------------------
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# libexpat.la - a libtool library file
|
|
2
|
-
# Generated by libtool (GNU libtool) 2.5.
|
|
2
|
+
# Generated by libtool (GNU libtool) 2.5.4
|
|
3
3
|
#
|
|
4
4
|
# Please DO NOT delete this file!
|
|
5
5
|
# It is necessary for linking the library.
|
|
@@ -25,7 +25,7 @@ weak_library_names=''
|
|
|
25
25
|
# Version information for libexpat.
|
|
26
26
|
current=11
|
|
27
27
|
age=10
|
|
28
|
-
revision=
|
|
28
|
+
revision=2
|
|
29
29
|
|
|
30
30
|
# Is this an already installed library?
|
|
31
31
|
installed=yes
|
|
Binary file
|
|
@@ -11,16 +11,23 @@
|
|
|
11
11
|
!! The following topics need *additional skilled C developers* to progress !!
|
|
12
12
|
!! in a timely manner or at all (loosely ordered by descending priority): !!
|
|
13
13
|
!! !!
|
|
14
|
-
!! - <blink>fixing a complex non-public security issue</blink>, !!
|
|
15
14
|
!! - teaming up on researching and fixing future security reports and !!
|
|
16
15
|
!! ClusterFuzz findings with few-days-max response times in communication !!
|
|
17
16
|
!! in order to (1) have a sound fix ready before the end of a 90 days !!
|
|
18
17
|
!! grace period and (2) in a sustainable manner, !!
|
|
18
|
+
!! - helping CPython Expat bindings with supporting Expat's billion laughs !!
|
|
19
|
+
!! attack protection API (https://github.com/python/cpython/issues/90949): !!
|
|
20
|
+
!! - XML_SetBillionLaughsAttackProtectionActivationThreshold !!
|
|
21
|
+
!! - XML_SetBillionLaughsAttackProtectionMaximumAmplification !!
|
|
22
|
+
!! - helping Perl's XML::Parser Expat bindings with supporting Expat's !!
|
|
23
|
+
!! security API (https://github.com/cpan-authors/XML-Parser/issues/102): !!
|
|
24
|
+
!! - XML_SetBillionLaughsAttackProtectionActivationThreshold !!
|
|
25
|
+
!! - XML_SetBillionLaughsAttackProtectionMaximumAmplification !!
|
|
26
|
+
!! - XML_SetReparseDeferralEnabled !!
|
|
19
27
|
!! - implementing and auto-testing XML 1.0r5 support !!
|
|
20
28
|
!! (needs discussion before pull requests), !!
|
|
21
29
|
!! - smart ideas on fixing the Autotools CMake files generation issue !!
|
|
22
30
|
!! without breaking CI (needs discussion before pull requests), !!
|
|
23
|
-
!! - the Windows binaries topic (needs requirements engineering first), !!
|
|
24
31
|
!! - pushing migration from `int` to `size_t` further !!
|
|
25
32
|
!! including edge-cases test coverage (needs discussion before anything). !!
|
|
26
33
|
!! !!
|
|
@@ -30,6 +37,116 @@
|
|
|
30
37
|
!! THANK YOU! Sebastian Pipping -- Berlin, 2024-03-09 !!
|
|
31
38
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
32
39
|
|
|
40
|
+
Release 2.7.1 Thu March 27 2025
|
|
41
|
+
Bug fixes:
|
|
42
|
+
#980 #989 Restore event pointer behavior from Expat 2.6.4
|
|
43
|
+
(that the fix to CVE-2024-8176 changed in 2.7.0);
|
|
44
|
+
affected API functions are:
|
|
45
|
+
- XML_GetCurrentByteCount
|
|
46
|
+
- XML_GetCurrentByteIndex
|
|
47
|
+
- XML_GetCurrentColumnNumber
|
|
48
|
+
- XML_GetCurrentLineNumber
|
|
49
|
+
- XML_GetInputContext
|
|
50
|
+
|
|
51
|
+
Other changes:
|
|
52
|
+
#976 #977 Autotools: Integrate files "fuzz/xml_lpm_fuzzer.{cpp,proto}"
|
|
53
|
+
with Automake that were missing from 2.7.0 release tarballs
|
|
54
|
+
#983 #984 Fix printf format specifiers for 32bit Emscripten
|
|
55
|
+
#992 docs: Promote OpenSSF Best Practices self-certification
|
|
56
|
+
#978 tests/benchmark: Resolve mistaken double close
|
|
57
|
+
#986 Address compiler warnings
|
|
58
|
+
#990 #993 Version info bumped from 11:1:10 (libexpat*.so.1.10.1)
|
|
59
|
+
to 11:2:10 (libexpat*.so.1.10.2); see https://verbump.de/
|
|
60
|
+
for what these numbers do
|
|
61
|
+
|
|
62
|
+
Infrastructure:
|
|
63
|
+
#982 CI: Start running Perl XML::Parser integration tests
|
|
64
|
+
#987 CI: Enforce Clang Static Analyzer clean code
|
|
65
|
+
#991 CI: Re-enable warning clang-analyzer-valist.Uninitialized
|
|
66
|
+
for clang-tidy
|
|
67
|
+
#981 CI: Cover compilation with musl
|
|
68
|
+
#983 #984 CI: Cover compilation with 32bit Emscripten
|
|
69
|
+
#976 #977 CI: Protect against fuzzer files missing from future
|
|
70
|
+
release archives
|
|
71
|
+
|
|
72
|
+
Special thanks to:
|
|
73
|
+
Berkay Eren Ürün
|
|
74
|
+
Matthew Fernandez
|
|
75
|
+
and
|
|
76
|
+
Perl XML::Parser
|
|
77
|
+
|
|
78
|
+
Release 2.7.0 Thu March 13 2025
|
|
79
|
+
Security fixes:
|
|
80
|
+
#893 #973 CVE-2024-8176 -- Fix crash from chaining a large number
|
|
81
|
+
of entities caused by stack overflow by resolving use of
|
|
82
|
+
recursion, for all three uses of entities:
|
|
83
|
+
- general entities in character data ("<e>&g1;</e>")
|
|
84
|
+
- general entities in attribute values ("<e k1='&g1;'/>")
|
|
85
|
+
- parameter entities ("%p1;")
|
|
86
|
+
Known impact is (reliable and easy) denial of service:
|
|
87
|
+
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H/E:H/RL:O/RC:C
|
|
88
|
+
(Base Score: 7.5, Temporal Score: 7.2)
|
|
89
|
+
Please note that a layer of compression around XML can
|
|
90
|
+
significantly reduce the minimum attack payload size.
|
|
91
|
+
|
|
92
|
+
Other changes:
|
|
93
|
+
#935 #937 Autotools: Make generated CMake files look for
|
|
94
|
+
libexpat.@SO_MAJOR@.dylib on macOS
|
|
95
|
+
#925 Autotools: Sync CMake templates with CMake 3.29
|
|
96
|
+
#945 #962 #966 CMake: Drop support for CMake <3.13
|
|
97
|
+
#942 CMake: Small fuzzing related improvements
|
|
98
|
+
#921 docs: Add missing documentation of error code
|
|
99
|
+
XML_ERROR_NOT_STARTED that was introduced with 2.6.4
|
|
100
|
+
#941 docs: Document need for C++11 compiler for use from C++
|
|
101
|
+
#959 tests/benchmark: Fix a (harmless) TOCTTOU
|
|
102
|
+
#944 Windows: Fix installer target location of file xmlwf.xml
|
|
103
|
+
for CMake
|
|
104
|
+
#953 Windows: Address warning -Wunknown-warning-option
|
|
105
|
+
about -Wno-pedantic-ms-format from LLVM MinGW
|
|
106
|
+
#971 Address Cppcheck warnings
|
|
107
|
+
#969 #970 Mass-migrate links from http:// to https://
|
|
108
|
+
#947 #958 ..
|
|
109
|
+
#974 #975 Document changes since the previous release
|
|
110
|
+
#974 #975 Version info bumped from 11:0:10 (libexpat*.so.1.10.0)
|
|
111
|
+
to 11:1:10 (libexpat*.so.1.10.1); see https://verbump.de/
|
|
112
|
+
for what these numbers do
|
|
113
|
+
|
|
114
|
+
Infrastructure:
|
|
115
|
+
#926 tests: Increase robustness
|
|
116
|
+
#927 #932 ..
|
|
117
|
+
#930 #933 tests: Increase test coverage
|
|
118
|
+
#617 #950 ..
|
|
119
|
+
#951 #952 ..
|
|
120
|
+
#954 #955 .. Fuzzing: Add new fuzzer "xml_lpm_fuzzer" based on
|
|
121
|
+
#961 Google's libprotobuf-mutator ("LPM")
|
|
122
|
+
#957 Fuzzing|CI: Start producing fuzzing code coverage reports
|
|
123
|
+
#936 CI: Pass -q -q for LCOV >=2.1 in coverage.sh
|
|
124
|
+
#942 CI: Small fuzzing related improvements
|
|
125
|
+
#139 #203 ..
|
|
126
|
+
#791 #946 CI: Make GitHub Actions build using MSVC on Windows and
|
|
127
|
+
produce 32bit and 64bit Windows binaries
|
|
128
|
+
#956 CI: Get off of about-to-be-removed Ubuntu 20.04
|
|
129
|
+
#960 #964 CI: Start uploading to Coverity Scan for static analysis
|
|
130
|
+
#972 CI: Stop loading DTD from the internet to address flaky CI
|
|
131
|
+
#971 CI: Adapt to breaking changes in Cppcheck
|
|
132
|
+
|
|
133
|
+
Special thanks to:
|
|
134
|
+
Alexander Gieringer
|
|
135
|
+
Berkay Eren Ürün
|
|
136
|
+
Hanno Böck
|
|
137
|
+
Jann Horn
|
|
138
|
+
Mark Brand
|
|
139
|
+
Sebastian Andrzej Siewior
|
|
140
|
+
Snild Dolkow
|
|
141
|
+
Thomas Pröll
|
|
142
|
+
Tomas Korbar
|
|
143
|
+
valord577
|
|
144
|
+
and
|
|
145
|
+
Google Project Zero
|
|
146
|
+
Linutronix
|
|
147
|
+
Red Hat
|
|
148
|
+
Siemens
|
|
149
|
+
|
|
33
150
|
Release 2.6.4 Wed November 6 2024
|
|
34
151
|
Security fixes:
|
|
35
152
|
#915 CVE-2024-50602 -- Fix crash within function XML_ResumeParser
|
|
@@ -46,6 +163,8 @@ Release 2.6.4 Wed November 6 2024
|
|
|
46
163
|
#904 tests: Resolve duplicate handler
|
|
47
164
|
#317 #918 tests: Improve tests on doctype closing (ex CVE-2019-15903)
|
|
48
165
|
#914 Fix signedness of format strings
|
|
166
|
+
#915 For use from C++, expat.h started requiring C++11 due to
|
|
167
|
+
use of C99 features
|
|
49
168
|
#919 #920 Version info bumped from 10:3:9 (libexpat*.so.1.9.3)
|
|
50
169
|
to 11:0:10 (libexpat*.so.1.10.0); see https://verbump.de/
|
|
51
170
|
for what these numbers do
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
Copyright (c) 2000-2005 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
|
12
12
|
Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net>
|
|
13
13
|
Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
|
|
14
|
-
Copyright (c) 2016-
|
|
14
|
+
Copyright (c) 2016-2025 Sebastian Pipping <sebastian@pipping.org>
|
|
15
15
|
Copyright (c) 2016 Cristian Rodríguez <crrodriguez@opensuse.org>
|
|
16
16
|
Copyright (c) 2016 Thomas Beutlich <tc@tbeu.de>
|
|
17
17
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
|
@@ -1067,8 +1067,8 @@ XML_SetReparseDeferralEnabled(XML_Parser parser, XML_Bool enabled);
|
|
|
1067
1067
|
See https://semver.org
|
|
1068
1068
|
*/
|
|
1069
1069
|
#define XML_MAJOR_VERSION 2
|
|
1070
|
-
#define XML_MINOR_VERSION
|
|
1071
|
-
#define XML_MICRO_VERSION
|
|
1070
|
+
#define XML_MINOR_VERSION 7
|
|
1071
|
+
#define XML_MICRO_VERSION 1
|
|
1072
1072
|
|
|
1073
1073
|
#ifdef __cplusplus
|
|
1074
1074
|
}
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
#define PACKAGE_NAME "expat"
|
|
84
84
|
|
|
85
85
|
/* Define to the full name and version of this package. */
|
|
86
|
-
#define PACKAGE_STRING "expat 2.
|
|
86
|
+
#define PACKAGE_STRING "expat 2.7.1"
|
|
87
87
|
|
|
88
88
|
/* Define to the one symbol short name of this package. */
|
|
89
89
|
#define PACKAGE_TARNAME "expat"
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
#define PACKAGE_URL ""
|
|
93
93
|
|
|
94
94
|
/* Define to the version of this package. */
|
|
95
|
-
#define PACKAGE_VERSION "2.
|
|
95
|
+
#define PACKAGE_VERSION "2.7.1"
|
|
96
96
|
|
|
97
97
|
/* Define to 1 if all of the C90 standard headers exist (not just the ones
|
|
98
98
|
required in a freestanding environment). This macro is provided for
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
#define STDC_HEADERS 1
|
|
101
101
|
|
|
102
102
|
/* Version number of package */
|
|
103
|
-
#define VERSION "2.
|
|
103
|
+
#define VERSION "2.7.1"
|
|
104
104
|
|
|
105
105
|
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
|
|
106
106
|
significant byte first (like Motorola and SPARC, unlike Intel). */
|
|
@@ -9,19 +9,19 @@
|
|
|
9
9
|
# The variable CVF_VERSION must be set before calling configure_file().
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
set(PACKAGE_VERSION "2.
|
|
12
|
+
set(PACKAGE_VERSION "2.7.1")
|
|
13
13
|
|
|
14
14
|
if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)
|
|
15
15
|
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
|
16
16
|
else()
|
|
17
17
|
|
|
18
|
-
if("2.
|
|
18
|
+
if("2.7.1" MATCHES "^([0-9]+)\\.")
|
|
19
19
|
set(CVF_VERSION_MAJOR "${CMAKE_MATCH_1}")
|
|
20
20
|
if(NOT CVF_VERSION_MAJOR VERSION_EQUAL 0)
|
|
21
21
|
string(REGEX REPLACE "^0+" "" CVF_VERSION_MAJOR "${CVF_VERSION_MAJOR}")
|
|
22
22
|
endif()
|
|
23
23
|
else()
|
|
24
|
-
set(CVF_VERSION_MAJOR "2.
|
|
24
|
+
set(CVF_VERSION_MAJOR "2.7.1")
|
|
25
25
|
endif()
|
|
26
26
|
|
|
27
27
|
if(PACKAGE_FIND_VERSION_RANGE)
|
|
@@ -8,12 +8,12 @@ set(CMAKE_IMPORT_FILE_VERSION 1)
|
|
|
8
8
|
# Import target "expat::expat" for configuration "NoConfig"
|
|
9
9
|
set_property(TARGET expat::expat APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG)
|
|
10
10
|
set_target_properties(expat::expat PROPERTIES
|
|
11
|
-
IMPORTED_LOCATION_NOCONFIG "${_IMPORT_PREFIX}/lib/libexpat.so.1.10.
|
|
11
|
+
IMPORTED_LOCATION_NOCONFIG "${_IMPORT_PREFIX}/lib/libexpat.so.1.10.2"
|
|
12
12
|
IMPORTED_SONAME_NOCONFIG "libexpat.so.1"
|
|
13
13
|
)
|
|
14
14
|
|
|
15
15
|
list(APPEND _cmake_import_check_targets expat::expat )
|
|
16
|
-
list(APPEND _cmake_import_check_files_for_expat::expat "${_IMPORT_PREFIX}/lib/libexpat.so.1.10.
|
|
16
|
+
list(APPEND _cmake_import_check_files_for_expat::expat "${_IMPORT_PREFIX}/lib/libexpat.so.1.10.2" )
|
|
17
17
|
|
|
18
18
|
# Commands beyond this point should not need to know the version.
|
|
19
19
|
set(CMAKE_IMPORT_FILE_VERSION)
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# Generated by CMake
|
|
2
2
|
|
|
3
3
|
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
|
|
4
|
-
message(FATAL_ERROR "CMake >= 2.8.
|
|
4
|
+
message(FATAL_ERROR "CMake >= 2.8.12 required")
|
|
5
5
|
endif()
|
|
6
6
|
if(CMAKE_VERSION VERSION_LESS "2.8.12")
|
|
7
7
|
message(FATAL_ERROR "CMake >= 2.8.12 required")
|
|
8
8
|
endif()
|
|
9
9
|
cmake_policy(PUSH)
|
|
10
|
-
cmake_policy(VERSION 2.8.12...3.
|
|
10
|
+
cmake_policy(VERSION 2.8.12...3.29)
|
|
11
11
|
#----------------------------------------------------------------
|
|
12
12
|
# Generated CMake target import file.
|
|
13
13
|
#----------------------------------------------------------------
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# libexpat.la - a libtool library file
|
|
2
|
-
# Generated by libtool (GNU libtool) 2.5.
|
|
2
|
+
# Generated by libtool (GNU libtool) 2.5.4
|
|
3
3
|
#
|
|
4
4
|
# Please DO NOT delete this file!
|
|
5
5
|
# It is necessary for linking the library.
|
|
@@ -25,7 +25,7 @@ weak_library_names=''
|
|
|
25
25
|
# Version information for libexpat.
|
|
26
26
|
current=11
|
|
27
27
|
age=10
|
|
28
|
-
revision=
|
|
28
|
+
revision=2
|
|
29
29
|
|
|
30
30
|
# Is this an already installed library?
|
|
31
31
|
installed=yes
|
|
Binary file
|
|
@@ -11,16 +11,23 @@
|
|
|
11
11
|
!! The following topics need *additional skilled C developers* to progress !!
|
|
12
12
|
!! in a timely manner or at all (loosely ordered by descending priority): !!
|
|
13
13
|
!! !!
|
|
14
|
-
!! - <blink>fixing a complex non-public security issue</blink>, !!
|
|
15
14
|
!! - teaming up on researching and fixing future security reports and !!
|
|
16
15
|
!! ClusterFuzz findings with few-days-max response times in communication !!
|
|
17
16
|
!! in order to (1) have a sound fix ready before the end of a 90 days !!
|
|
18
17
|
!! grace period and (2) in a sustainable manner, !!
|
|
18
|
+
!! - helping CPython Expat bindings with supporting Expat's billion laughs !!
|
|
19
|
+
!! attack protection API (https://github.com/python/cpython/issues/90949): !!
|
|
20
|
+
!! - XML_SetBillionLaughsAttackProtectionActivationThreshold !!
|
|
21
|
+
!! - XML_SetBillionLaughsAttackProtectionMaximumAmplification !!
|
|
22
|
+
!! - helping Perl's XML::Parser Expat bindings with supporting Expat's !!
|
|
23
|
+
!! security API (https://github.com/cpan-authors/XML-Parser/issues/102): !!
|
|
24
|
+
!! - XML_SetBillionLaughsAttackProtectionActivationThreshold !!
|
|
25
|
+
!! - XML_SetBillionLaughsAttackProtectionMaximumAmplification !!
|
|
26
|
+
!! - XML_SetReparseDeferralEnabled !!
|
|
19
27
|
!! - implementing and auto-testing XML 1.0r5 support !!
|
|
20
28
|
!! (needs discussion before pull requests), !!
|
|
21
29
|
!! - smart ideas on fixing the Autotools CMake files generation issue !!
|
|
22
30
|
!! without breaking CI (needs discussion before pull requests), !!
|
|
23
|
-
!! - the Windows binaries topic (needs requirements engineering first), !!
|
|
24
31
|
!! - pushing migration from `int` to `size_t` further !!
|
|
25
32
|
!! including edge-cases test coverage (needs discussion before anything). !!
|
|
26
33
|
!! !!
|
|
@@ -30,6 +37,116 @@
|
|
|
30
37
|
!! THANK YOU! Sebastian Pipping -- Berlin, 2024-03-09 !!
|
|
31
38
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
32
39
|
|
|
40
|
+
Release 2.7.1 Thu March 27 2025
|
|
41
|
+
Bug fixes:
|
|
42
|
+
#980 #989 Restore event pointer behavior from Expat 2.6.4
|
|
43
|
+
(that the fix to CVE-2024-8176 changed in 2.7.0);
|
|
44
|
+
affected API functions are:
|
|
45
|
+
- XML_GetCurrentByteCount
|
|
46
|
+
- XML_GetCurrentByteIndex
|
|
47
|
+
- XML_GetCurrentColumnNumber
|
|
48
|
+
- XML_GetCurrentLineNumber
|
|
49
|
+
- XML_GetInputContext
|
|
50
|
+
|
|
51
|
+
Other changes:
|
|
52
|
+
#976 #977 Autotools: Integrate files "fuzz/xml_lpm_fuzzer.{cpp,proto}"
|
|
53
|
+
with Automake that were missing from 2.7.0 release tarballs
|
|
54
|
+
#983 #984 Fix printf format specifiers for 32bit Emscripten
|
|
55
|
+
#992 docs: Promote OpenSSF Best Practices self-certification
|
|
56
|
+
#978 tests/benchmark: Resolve mistaken double close
|
|
57
|
+
#986 Address compiler warnings
|
|
58
|
+
#990 #993 Version info bumped from 11:1:10 (libexpat*.so.1.10.1)
|
|
59
|
+
to 11:2:10 (libexpat*.so.1.10.2); see https://verbump.de/
|
|
60
|
+
for what these numbers do
|
|
61
|
+
|
|
62
|
+
Infrastructure:
|
|
63
|
+
#982 CI: Start running Perl XML::Parser integration tests
|
|
64
|
+
#987 CI: Enforce Clang Static Analyzer clean code
|
|
65
|
+
#991 CI: Re-enable warning clang-analyzer-valist.Uninitialized
|
|
66
|
+
for clang-tidy
|
|
67
|
+
#981 CI: Cover compilation with musl
|
|
68
|
+
#983 #984 CI: Cover compilation with 32bit Emscripten
|
|
69
|
+
#976 #977 CI: Protect against fuzzer files missing from future
|
|
70
|
+
release archives
|
|
71
|
+
|
|
72
|
+
Special thanks to:
|
|
73
|
+
Berkay Eren Ürün
|
|
74
|
+
Matthew Fernandez
|
|
75
|
+
and
|
|
76
|
+
Perl XML::Parser
|
|
77
|
+
|
|
78
|
+
Release 2.7.0 Thu March 13 2025
|
|
79
|
+
Security fixes:
|
|
80
|
+
#893 #973 CVE-2024-8176 -- Fix crash from chaining a large number
|
|
81
|
+
of entities caused by stack overflow by resolving use of
|
|
82
|
+
recursion, for all three uses of entities:
|
|
83
|
+
- general entities in character data ("<e>&g1;</e>")
|
|
84
|
+
- general entities in attribute values ("<e k1='&g1;'/>")
|
|
85
|
+
- parameter entities ("%p1;")
|
|
86
|
+
Known impact is (reliable and easy) denial of service:
|
|
87
|
+
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H/E:H/RL:O/RC:C
|
|
88
|
+
(Base Score: 7.5, Temporal Score: 7.2)
|
|
89
|
+
Please note that a layer of compression around XML can
|
|
90
|
+
significantly reduce the minimum attack payload size.
|
|
91
|
+
|
|
92
|
+
Other changes:
|
|
93
|
+
#935 #937 Autotools: Make generated CMake files look for
|
|
94
|
+
libexpat.@SO_MAJOR@.dylib on macOS
|
|
95
|
+
#925 Autotools: Sync CMake templates with CMake 3.29
|
|
96
|
+
#945 #962 #966 CMake: Drop support for CMake <3.13
|
|
97
|
+
#942 CMake: Small fuzzing related improvements
|
|
98
|
+
#921 docs: Add missing documentation of error code
|
|
99
|
+
XML_ERROR_NOT_STARTED that was introduced with 2.6.4
|
|
100
|
+
#941 docs: Document need for C++11 compiler for use from C++
|
|
101
|
+
#959 tests/benchmark: Fix a (harmless) TOCTTOU
|
|
102
|
+
#944 Windows: Fix installer target location of file xmlwf.xml
|
|
103
|
+
for CMake
|
|
104
|
+
#953 Windows: Address warning -Wunknown-warning-option
|
|
105
|
+
about -Wno-pedantic-ms-format from LLVM MinGW
|
|
106
|
+
#971 Address Cppcheck warnings
|
|
107
|
+
#969 #970 Mass-migrate links from http:// to https://
|
|
108
|
+
#947 #958 ..
|
|
109
|
+
#974 #975 Document changes since the previous release
|
|
110
|
+
#974 #975 Version info bumped from 11:0:10 (libexpat*.so.1.10.0)
|
|
111
|
+
to 11:1:10 (libexpat*.so.1.10.1); see https://verbump.de/
|
|
112
|
+
for what these numbers do
|
|
113
|
+
|
|
114
|
+
Infrastructure:
|
|
115
|
+
#926 tests: Increase robustness
|
|
116
|
+
#927 #932 ..
|
|
117
|
+
#930 #933 tests: Increase test coverage
|
|
118
|
+
#617 #950 ..
|
|
119
|
+
#951 #952 ..
|
|
120
|
+
#954 #955 .. Fuzzing: Add new fuzzer "xml_lpm_fuzzer" based on
|
|
121
|
+
#961 Google's libprotobuf-mutator ("LPM")
|
|
122
|
+
#957 Fuzzing|CI: Start producing fuzzing code coverage reports
|
|
123
|
+
#936 CI: Pass -q -q for LCOV >=2.1 in coverage.sh
|
|
124
|
+
#942 CI: Small fuzzing related improvements
|
|
125
|
+
#139 #203 ..
|
|
126
|
+
#791 #946 CI: Make GitHub Actions build using MSVC on Windows and
|
|
127
|
+
produce 32bit and 64bit Windows binaries
|
|
128
|
+
#956 CI: Get off of about-to-be-removed Ubuntu 20.04
|
|
129
|
+
#960 #964 CI: Start uploading to Coverity Scan for static analysis
|
|
130
|
+
#972 CI: Stop loading DTD from the internet to address flaky CI
|
|
131
|
+
#971 CI: Adapt to breaking changes in Cppcheck
|
|
132
|
+
|
|
133
|
+
Special thanks to:
|
|
134
|
+
Alexander Gieringer
|
|
135
|
+
Berkay Eren Ürün
|
|
136
|
+
Hanno Böck
|
|
137
|
+
Jann Horn
|
|
138
|
+
Mark Brand
|
|
139
|
+
Sebastian Andrzej Siewior
|
|
140
|
+
Snild Dolkow
|
|
141
|
+
Thomas Pröll
|
|
142
|
+
Tomas Korbar
|
|
143
|
+
valord577
|
|
144
|
+
and
|
|
145
|
+
Google Project Zero
|
|
146
|
+
Linutronix
|
|
147
|
+
Red Hat
|
|
148
|
+
Siemens
|
|
149
|
+
|
|
33
150
|
Release 2.6.4 Wed November 6 2024
|
|
34
151
|
Security fixes:
|
|
35
152
|
#915 CVE-2024-50602 -- Fix crash within function XML_ResumeParser
|
|
@@ -46,6 +163,8 @@ Release 2.6.4 Wed November 6 2024
|
|
|
46
163
|
#904 tests: Resolve duplicate handler
|
|
47
164
|
#317 #918 tests: Improve tests on doctype closing (ex CVE-2019-15903)
|
|
48
165
|
#914 Fix signedness of format strings
|
|
166
|
+
#915 For use from C++, expat.h started requiring C++11 due to
|
|
167
|
+
use of C99 features
|
|
49
168
|
#919 #920 Version info bumped from 10:3:9 (libexpat*.so.1.9.3)
|
|
50
169
|
to 11:0:10 (libexpat*.so.1.10.0); see https://verbump.de/
|
|
51
170
|
for what these numbers do
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
Copyright (c) 2000-2005 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
|
12
12
|
Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net>
|
|
13
13
|
Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
|
|
14
|
-
Copyright (c) 2016-
|
|
14
|
+
Copyright (c) 2016-2025 Sebastian Pipping <sebastian@pipping.org>
|
|
15
15
|
Copyright (c) 2016 Cristian Rodríguez <crrodriguez@opensuse.org>
|
|
16
16
|
Copyright (c) 2016 Thomas Beutlich <tc@tbeu.de>
|
|
17
17
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
|
@@ -1067,8 +1067,8 @@ XML_SetReparseDeferralEnabled(XML_Parser parser, XML_Bool enabled);
|
|
|
1067
1067
|
See https://semver.org
|
|
1068
1068
|
*/
|
|
1069
1069
|
#define XML_MAJOR_VERSION 2
|
|
1070
|
-
#define XML_MINOR_VERSION
|
|
1071
|
-
#define XML_MICRO_VERSION
|
|
1070
|
+
#define XML_MINOR_VERSION 7
|
|
1071
|
+
#define XML_MICRO_VERSION 1
|
|
1072
1072
|
|
|
1073
1073
|
#ifdef __cplusplus
|
|
1074
1074
|
}
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
#define PACKAGE_NAME "expat"
|
|
84
84
|
|
|
85
85
|
/* Define to the full name and version of this package. */
|
|
86
|
-
#define PACKAGE_STRING "expat 2.
|
|
86
|
+
#define PACKAGE_STRING "expat 2.7.1"
|
|
87
87
|
|
|
88
88
|
/* Define to the one symbol short name of this package. */
|
|
89
89
|
#define PACKAGE_TARNAME "expat"
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
#define PACKAGE_URL ""
|
|
93
93
|
|
|
94
94
|
/* Define to the version of this package. */
|
|
95
|
-
#define PACKAGE_VERSION "2.
|
|
95
|
+
#define PACKAGE_VERSION "2.7.1"
|
|
96
96
|
|
|
97
97
|
/* Define to 1 if all of the C90 standard headers exist (not just the ones
|
|
98
98
|
required in a freestanding environment). This macro is provided for
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
#define STDC_HEADERS 1
|
|
101
101
|
|
|
102
102
|
/* Version number of package */
|
|
103
|
-
#define VERSION "2.
|
|
103
|
+
#define VERSION "2.7.1"
|
|
104
104
|
|
|
105
105
|
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
|
|
106
106
|
significant byte first (like Motorola and SPARC, unlike Intel). */
|