Skip to content

Commit 789b6e7

Browse files
committed
Update to 2.15.2
1 parent 7ca1b57 commit 789b6e7

142 files changed

Lines changed: 3895 additions & 302 deletions

File tree

Some content is hidden

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

NEWS

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,87 @@
11
NEWS file for libxml2
22

3+
v2.15.2: Mar 03 2026
4+
5+
### Security
6+
7+
- CVE-2026-1757 fix: Memory leak in xmllint Shell - shell.c
8+
- CVE-2026-0990 fix: Prevent infinite recursion in
9+
xmlCatalogListXMLResolve
10+
- CVE-2026-0992 fix: Exponential behavior when handling
11+
- parser: Fix infinite loop in xmlCtxtParseContent
12+
- CVE-2025-10911 libxslt related: Ignore next/prev of documents when
13+
traversing XPath
14+
- CVE-2026-0989 fix: Add RelaxNG include limit
15+
- xmlIO: use size_t for buffer size reallocation
16+
- uri: fix signed integer overflow in xmlBuildRelativeURISafe
17+
- schematron: fix memory leaks on error paths in xmlSchematronParseRule
18+
- catalog: fix stack overflow from self-referencing SGML CATALOG entries
19+
20+
### Improvements
21+
22+
- fuzz: Make fuzzy encoding match more lenient
23+
- Fix C14N type confusion
24+
- meson: Fix build with Meson < 1.3
25+
- xmllint: Use zlib directly
26+
- xmllint: New option to separate xpath results using null, --xpath0
27+
- autotools: Make valgrind actually check for leaks
28+
- meson: Add valgrind test setup
29+
- Fix xmlOutputBufferGetContent output when encoder is set
30+
- threads: don't force _WIN32_WINNT to Vista if it's set to a higher value
31+
- dist: Add generated documentation to the dist as "dist-doc" folder
32+
to simplify downstream packaging of doc
33+
- Fix xmlRemoveEntity removing from wrong hash table
34+
- use duplicating variant in relaxng to mitigate UAF
35+
- Fix memory leak in xmlTextWriterStartAttributeNS on OOM
36+
- meson: remove hardcoded buildtype=debug default
37+
- Fix memory leak of prefix in xmlTextWriterStartElementNS()
38+
- writer: Add a few extra NULL checks to avoid memory leaks on corrupt
39+
writer path.
40+
41+
### Thanks
42+
43+
Thanks to the following new contributors:
44+
45+
- gabriel desharnais
46+
- Herman Semenoff
47+
- Iván Chavero
48+
- Jayakrishna Menon
49+
- Michael Heilmann
50+
- Michal Privoznik
51+
- Nathan
52+
- Peter Fordham
53+
- Petr Simecek
54+
- Sandino Araico Sanchez
55+
- Stéphane Cerveau
56+
- Steve Lhomme
57+
- Trevor Gamblin
58+
- ylwango613
59+
- Yun
60+
61+
### Full list of commits and contributors on this release
62+
63+
15 Daniel Garcia Moreno
64+
5 ylwango613
65+
4 Peter Fordham
66+
4 Nick Wellnhofer
67+
2 Michal Privoznik
68+
2 Iván Chavero
69+
1 gabriel desharnais
70+
1 Yun
71+
1 Trevor Gamblin
72+
1 Stéphane Cerveau
73+
1 Steve Lhomme
74+
1 Sandino Araico Sanchez
75+
1 Petr Simecek
76+
1 Niels Dossche
77+
1 Nathan
78+
1 Mike Dalessio
79+
1 Michael Heilmann
80+
1 Jayakrishna Menon
81+
1 Herman Semenoff
82+
1 Benjamin Gilbert
83+
84+
385
v2.15.1: Oct 16 2025
486

587
### Regressions

README.libxml2.md

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,29 @@ This code is released under the MIT License, see the Copyright file.
2121

2222
## Security
2323

24-
This is open-source software written by hobbyists, maintained by a single
25-
volunteer, badly tested, written in a memory-unsafe language and full of
26-
security bugs. It is foolish to use this software to process untrusted data.
27-
As such, we treat security issues like any other bug. Each security report
28-
we receive will be made public immediately and won't be prioritized.
24+
This is open-source software written by hobbyists and maintained by
25+
volunteers.
26+
27+
It's NOT recommended to use this software to process **untrusted data**.
28+
There is a lot of ways that a malicious crafted xml could exploit a
29+
hidden vulnerability in the software.
30+
31+
The software is provided "as is", without warranty of any kind,
32+
express or implied. Use this software at your own risk.
33+
34+
To **report security bugs**, you can create a confidential issue with
35+
the "security" label. We will review and work on it as a best effort.
36+
But remember that this is a community project, maintained by volunteer
37+
developers, so if you are concern about any important security bug
38+
that's critical for you, feel free to collaborate and provide a patch.
39+
40+
The main rule is to be kind. Do not pressure developers to fix a CVE
41+
or to work on a functionality that you need, because that won't work.
42+
This is a community project, developers will work in the issues that
43+
they consider interesting and when they want. All contributions are
44+
welcome, so if something is important for you, you can always get
45+
involved, implement it yourself and be part of the open source
46+
community.
2947

3048
## Build instructions
3149

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
libxml2 Windows build with Visual Studio.
44

5-
This version is libxml2-2.15.1.
5+
This version is libxml2-2.15.2.
66

77
To build, simply open the required solution file, and
88
you know how to use Visual Studio, right?

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.15.1
1+
2.15.2

build-VS2008/libxml2.sln

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ EndProject
88
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxml2-static-for-dll", "libxml2-static-for-dll\libxml2-static-for-dll.vcproj", "{8A8D78A8-B79C-49C3-8BB4-F98A034A7950}"
99
EndProject
1010
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{2852A29E-A52C-45B0-ADAB-D71F72BC7747}"
11+
ProjectSection(SolutionItems) = preProject
12+
tests\testcatalog\testcatalog.vcproj = tests\testcatalog\testcatalog.vcproj
13+
EndProjectSection
1114
EndProject
1215
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "runsuite", "tests\runsuite\runsuite.vcproj", "{58998B68-394A-43A9-8709-878B75187283}"
1316
ProjectSection(ProjectDependencies) = postProject
@@ -84,6 +87,11 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testparser", "tests\testpar
8487
{18397431-727F-4081-A7E0-A41C2019435E} = {18397431-727F-4081-A7E0-A41C2019435E}
8588
EndProjectSection
8689
EndProject
90+
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testcatalog", "tests\testcatalog\testcatalog.vcproj", "{A4DDDD7A-99EF-4FF2-83FC-F74F7C6006AA}"
91+
ProjectSection(ProjectDependencies) = postProject
92+
{18397431-727F-4081-A7E0-A41C2019435E} = {18397431-727F-4081-A7E0-A41C2019435E}
93+
EndProjectSection
94+
EndProject
8795
Global
8896
GlobalSection(SolutionConfigurationPlatforms) = preSolution
8997
Debug|Win32 = Debug|Win32
@@ -236,6 +244,14 @@ Global
236244
{58FA4B95-40F0-449B-AA85-57EBEEA933A8}.Release|Win32.Build.0 = Release|Win32
237245
{58FA4B95-40F0-449B-AA85-57EBEEA933A8}.Release|x64.ActiveCfg = Release|x64
238246
{58FA4B95-40F0-449B-AA85-57EBEEA933A8}.Release|x64.Build.0 = Release|x64
247+
{A4DDDD7A-99EF-4FF2-83FC-F74F7C6006AA}.Debug|Win32.ActiveCfg = Debug|Win32
248+
{A4DDDD7A-99EF-4FF2-83FC-F74F7C6006AA}.Debug|Win32.Build.0 = Debug|Win32
249+
{A4DDDD7A-99EF-4FF2-83FC-F74F7C6006AA}.Debug|x64.ActiveCfg = Debug|x64
250+
{A4DDDD7A-99EF-4FF2-83FC-F74F7C6006AA}.Debug|x64.Build.0 = Debug|x64
251+
{A4DDDD7A-99EF-4FF2-83FC-F74F7C6006AA}.Release|Win32.ActiveCfg = Release|Win32
252+
{A4DDDD7A-99EF-4FF2-83FC-F74F7C6006AA}.Release|Win32.Build.0 = Release|Win32
253+
{A4DDDD7A-99EF-4FF2-83FC-F74F7C6006AA}.Release|x64.ActiveCfg = Release|x64
254+
{A4DDDD7A-99EF-4FF2-83FC-F74F7C6006AA}.Release|x64.Build.0 = Release|x64
239255
EndGlobalSection
240256
GlobalSection(SolutionProperties) = preSolution
241257
HideSolutionNode = FALSE
@@ -256,5 +272,6 @@ Global
256272
{F4ACFCBF-3CCF-471E-BD54-3BECF8E39A46} = {2852A29E-A52C-45B0-ADAB-D71F72BC7747}
257273
{74B1EC20-670B-45BF-9683-EE0D40C661DD} = {2852A29E-A52C-45B0-ADAB-D71F72BC7747}
258274
{58FA4B95-40F0-449B-AA85-57EBEEA933A8} = {2852A29E-A52C-45B0-ADAB-D71F72BC7747}
275+
{A4DDDD7A-99EF-4FF2-83FC-F74F7C6006AA} = {2852A29E-A52C-45B0-ADAB-D71F72BC7747}
259276
EndGlobalSection
260277
EndGlobal

0 commit comments

Comments
 (0)