# HG changeset patch # User Petr Sumbera # Date 1446561963 28800 # Node ID 61e2751151cdf59b36b3dfbfb1f3233b7fad7d3e # Parent 2d501f209a1adf9a9b7b979a97ed0be727f63b8b 22097432 problem in LIBRARY/LIBXML diff -r 2d501f209a1a -r 61e2751151cd components/libxml2/Makefile --- a/components/libxml2/Makefile Wed Nov 04 09:09:22 2015 -0800 +++ b/components/libxml2/Makefile Tue Nov 03 06:46:03 2015 -0800 @@ -99,8 +99,12 @@ # It's also nice to test python 3.4 modules. COMPONENT_POST_TEST_ACTION = \ - ([ $(BITS) -eq 64 ] && (cd $(@D)/python3.4 ; \ - $(GMAKE) $(COMPONENT_TEST_ARGS) test)) + ( if [ $(BITS) -eq 64 ]; then \ + cd $(@D)/python3.4 ; \ + $(GMAKE) $(COMPONENT_TEST_ARGS) test ; \ + else \ + true ; \ + fi ) # We have patched our 64 bit python so it will search for modules only in # '64/' directories. Now we need to provide one. Otherwise python will diff -r 2d501f209a1a -r 61e2751151cd components/libxml2/patches/CVE-2015-7942.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/libxml2/patches/CVE-2015-7942.patch Tue Nov 03 06:46:03 2015 -0800 @@ -0,0 +1,50 @@ +Patch origin: upstream +Patch status: will be part of next version + +https://git.gnome.org/browse/libxml2/patch/?id=bd0526e66a56e75a18da8c15c4750db8f801c52d +https://git.gnome.org/browse/libxml2/patch/?id=41ac9049a27f52e7a1f3b341f8714149fc88d450 + +From bd0526e66a56e75a18da8c15c4750db8f801c52d Mon Sep 17 00:00:00 2001 +From: Daniel Veillard +Date: Fri, 23 Oct 2015 19:02:28 +0800 +Subject: Another variation of overflow in Conditional sections + +Which happen after the previous fix to +https://bugzilla.gnome.org/show_bug.cgi?id=756456 + +But stopping the parser and exiting we didn't pop the intermediary entities +and doing the SKIP there applies on an input which may be too small +--- + parser.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +From 41ac9049a27f52e7a1f3b341f8714149fc88d450 Mon Sep 17 00:00:00 2001 +From: Daniel Veillard +Date: Tue, 27 Oct 2015 10:53:44 +0800 +Subject: Fix an error in previous Conditional section patch + +an off by one mistake in the change, led to error on correct +document where the end of the included entity was exactly +the end of the conditional section, leading to regtest failure +--- + parser.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/parser.c b/parser.c +index a65e4cc..b9217ff 100644 +--- a/parser.c ++++ b/parser.c +@@ -6915,7 +6915,9 @@ xmlParseConditionalSections(xmlParserCtxtPtr ctxt) { + "All markup of the conditional section is not in the same entity\n", + NULL, NULL); + } +- SKIP(3); ++ if ((ctxt-> instate != XML_PARSER_EOF) && ++ ((ctxt->input->cur + 3) <= ctxt->input->end)) ++ SKIP(3); + } + } + +-- +cgit v0.11.2 +