diff options
author | James Meyer <james.meyer@operamail.com> | 2012-08-07 18:52:46 (GMT) |
---|---|---|
committer | James Meyer <james.meyer@operamail.com> | 2012-08-07 18:52:46 (GMT) |
commit | f2be005f4a1b502032566d4040091ef602bee07a (patch) | |
tree | 5e999ae1f653c036459a8ffc5448037550b07e91 /abs/core/libxml2/CVE-2011-2834.patch | |
parent | 297ec2f39c4d69b1434c39d0ed5af61404dbe677 (diff) | |
download | linhes_pkgbuild-f2be005f4a1b502032566d4040091ef602bee07a.zip linhes_pkgbuild-f2be005f4a1b502032566d4040091ef602bee07a.tar.gz linhes_pkgbuild-f2be005f4a1b502032566d4040091ef602bee07a.tar.bz2 |
libxml2: 2.7.8
Diffstat (limited to 'abs/core/libxml2/CVE-2011-2834.patch')
-rw-r--r-- | abs/core/libxml2/CVE-2011-2834.patch | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/abs/core/libxml2/CVE-2011-2834.patch b/abs/core/libxml2/CVE-2011-2834.patch new file mode 100644 index 0000000..cfc61e0 --- /dev/null +++ b/abs/core/libxml2/CVE-2011-2834.patch @@ -0,0 +1,61 @@ +commit 1d4526f6f4ec8d18c40e2a09b387652a6c1aa2cd +Author: Daniel Veillard <veillard@redhat.com> +Date: Tue Oct 11 16:34:34 2011 +0800 + + Fix missing error status in XPath evaluation + + Started by Chris Evans, I added a few more place where the + error should have been set in the evaluation context. + +diff --git a/xpath.c b/xpath.c +index bcee2ea..d9d902c 100644 +--- a/xpath.c ++++ b/xpath.c +@@ -2485,6 +2485,7 @@ valuePush(xmlXPathParserContextPtr ctxt, xmlXPathObjectPtr value) + sizeof(ctxt->valueTab[0])); + if (tmp == NULL) { + xmlGenericError(xmlGenericErrorContext, "realloc failed !\n"); ++ ctxt->error = XPATH_MEMORY_ERROR; + return (0); + } + ctxt->valueMax *= 2; +@@ -9340,6 +9341,7 @@ xmlXPathTranslateFunction(xmlXPathParserContextPtr ctxt, int nargs) { + if ( (ch & 0xc0) != 0xc0 ) { + xmlGenericError(xmlGenericErrorContext, + "xmlXPathTranslateFunction: Invalid UTF8 string\n"); ++ /* not asserting an XPath error is probably better */ + break; + } + /* then skip over remaining bytes for this char */ +@@ -9347,6 +9349,7 @@ xmlXPathTranslateFunction(xmlXPathParserContextPtr ctxt, int nargs) { + if ( (*cptr++ & 0xc0) != 0x80 ) { + xmlGenericError(xmlGenericErrorContext, + "xmlXPathTranslateFunction: Invalid UTF8 string\n"); ++ /* not asserting an XPath error is probably better */ + break; + } + if (ch & 0x80) /* must have had error encountered */ +@@ -13410,6 +13413,7 @@ xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op) + xmlGenericError(xmlGenericErrorContext, + "xmlXPathCompOpEval: variable %s bound to undefined prefix %s\n", + (char *) op->value4, (char *)op->value5); ++ ctxt->error = XPATH_UNDEF_PREFIX_ERROR; + return (total); + } + val = xmlXPathVariableLookupNS(ctxt->context, +@@ -13464,6 +13468,7 @@ xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op) + "xmlXPathCompOpEval: function %s bound to undefined prefix %s\n", + (char *)op->value4, (char *)op->value5); + xmlXPathPopFrame(ctxt, frame); ++ ctxt->error = XPATH_UNDEF_PREFIX_ERROR; + return (total); + } + func = xmlXPathFunctionLookupNS(ctxt->context, +@@ -14042,6 +14047,7 @@ xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op) + } + xmlGenericError(xmlGenericErrorContext, + "XPath: unknown precompiled operation %d\n", op->op); ++ ctxt->error = XPATH_INVALID_OPERAND; + return (total); + } + |