diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2012-08-16 09:52:37 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2012-08-16 09:52:37 +0000 |
commit | 74a93b6947dda51282111815d38594436fced477 (patch) | |
tree | 6b79dee50f952e202b25554ec8f0b47515c5737b /main/libxml2/libxml2-2.7.8-xpath-memory.patch | |
parent | 4418ddad5793b4450725e317ad4231a0cb82215e (diff) |
main/libxml2: apply various fixes from upstream (CVE-2012-2807)
fixes #1305
Diffstat (limited to 'main/libxml2/libxml2-2.7.8-xpath-memory.patch')
-rw-r--r-- | main/libxml2/libxml2-2.7.8-xpath-memory.patch | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/main/libxml2/libxml2-2.7.8-xpath-memory.patch b/main/libxml2/libxml2-2.7.8-xpath-memory.patch new file mode 100644 index 00000000000..f94350d277f --- /dev/null +++ b/main/libxml2/libxml2-2.7.8-xpath-memory.patch @@ -0,0 +1,29 @@ +From 0cbeb50ee03ce582a0c979c70d8fbf030e270c37 Mon Sep 17 00:00:00 2001 +From: Daniel Veillard <veillard@redhat.com> +Date: Mon, 15 Nov 2010 11:06:29 +0000 +Subject: Fix a potential memory access error + +in case of a previus allocation error +--- +diff --git a/xpath.c b/xpath.c +index 4d6826d..81e33f6 100644 +--- a/xpath.c ++++ b/xpath.c +@@ -3575,13 +3575,13 @@ xmlXPathNodeSetAdd(xmlNodeSetPtr cur, xmlNodePtr val) { + } else if (cur->nodeNr == cur->nodeMax) { + xmlNodePtr *temp; + +- cur->nodeMax *= 2; +- temp = (xmlNodePtr *) xmlRealloc(cur->nodeTab, cur->nodeMax * ++ temp = (xmlNodePtr *) xmlRealloc(cur->nodeTab, cur->nodeMax * 2 * + sizeof(xmlNodePtr)); + if (temp == NULL) { + xmlXPathErrMemory(NULL, "growing nodeset\n"); + return; + } ++ cur->nodeMax *= 2; + cur->nodeTab = temp; + } + if (val->type == XML_NAMESPACE_DECL) { +-- +cgit v0.8.3.1 |