![Peter Korsgaard](/assets/img/avatar_default.png)
Fixes the following security issues: - CVE-2013-1752: Change use of readline() in :class:`imaplib.IMAP4_SSL` to limit line length - CVE-2018-14647: The C accelerated _elementtree module now initializes hash randomization salt from _Py_HashSecret instead of libexpat's default CSPRNG. For more details, see the NEWS file: https://github.com/python/cpython/blob/v2.7.16/Misc/NEWS.d/2.7.16rc1.rst Refresh patches, drop now upstream package/python/0035-bpo-35746-Fix-segfault-in-ssl-s-cert-parser-GH-11569.patch and adjust hash of LICENSE file for a change of copyright years. run-tests results: 16:05:41 TestPython2 Starting 16:05:42 TestPython2 Building 16:11:26 TestPython2 Building done 16:11:32 TestPython2 Cleaning up . ---------------------------------------------------------------------- Ran 1 test in 351.905s OK Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
93 lines
3 KiB
Diff
93 lines
3 KiB
Diff
From 548413a659cc5320560d6b794fe8edd06dd1d22e Mon Sep 17 00:00:00 2001
|
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
Date: Tue, 7 Mar 2017 22:29:20 +0100
|
|
Subject: [PATCH] Add an option to disable expat
|
|
|
|
This patch replaces the existing --with-system-expat option with a
|
|
--with-expat={system,builtin,none} option, which allows to tell Python
|
|
whether we want to use the system expat (already installed), the expat
|
|
builtin the Python sources, or no expat at all (which disables the
|
|
installation of XML modules).
|
|
|
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
|
|
[Peter: update for 2.7.16]
|
|
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
|
---
|
|
Makefile.pre.in | 6 +++++-
|
|
configure.ac | 18 +++++++++++++-----
|
|
setup.py | 2 +-
|
|
3 files changed, 19 insertions(+), 7 deletions(-)
|
|
|
|
diff --git a/Makefile.pre.in b/Makefile.pre.in
|
|
index 458f4ad55b..8dee345539 100644
|
|
--- a/Makefile.pre.in
|
|
+++ b/Makefile.pre.in
|
|
@@ -1056,7 +1056,7 @@ LIBSUBDIRS= site-packages \
|
|
logging bsddb csv importlib wsgiref \
|
|
ctypes ctypes/macholib \
|
|
idlelib idlelib/Icons \
|
|
- distutils distutils/command $(XMLLIBSUBDIRS) \
|
|
+ distutils distutils/command \
|
|
multiprocessing multiprocessing/dummy \
|
|
unittest \
|
|
lib-old \
|
|
@@ -1107,6 +1107,10 @@ ifeq (@CURSES@,yes)
|
|
LIBSUBDIRS += curses
|
|
endif
|
|
|
|
+ifeq (@EXPAT@,yes)
|
|
+LIBSUBDIRS += $(XMLLIBSUBDIRS)
|
|
+endif
|
|
+
|
|
libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c
|
|
@for i in $(SCRIPTDIR) $(LIBDEST); \
|
|
do \
|
|
diff --git a/configure.ac b/configure.ac
|
|
index a7ebcd091e..2f5759a890 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -2499,13 +2499,21 @@ PKG_PROG_PKG_CONFIG
|
|
AC_SUBST(DISABLED_EXTENSIONS)
|
|
|
|
# Check for use of the system expat library
|
|
-AC_MSG_CHECKING(for --with-system-expat)
|
|
-AC_ARG_WITH(system_expat,
|
|
- AS_HELP_STRING([--with-system-expat], [build pyexpat module using an installed expat library]),
|
|
+AC_MSG_CHECKING(for --with-expat)
|
|
+AC_ARG_WITH(expat,
|
|
+ AS_HELP_STRING([--with-expat], [select which expat version to use: system, builtin, none]),
|
|
[],
|
|
- [with_system_expat="no"])
|
|
+ [with_expat="builtin"])
|
|
|
|
-AC_MSG_RESULT($with_system_expat)
|
|
+AC_MSG_RESULT($with_expat)
|
|
+
|
|
+if test "$with_expat" != "none"; then
|
|
+ EXPAT=yes
|
|
+else
|
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} pyexpat"
|
|
+ EXPAT=no
|
|
+fi
|
|
+AC_SUBST(EXPAT)
|
|
|
|
# Check for use of the system libffi library
|
|
AC_MSG_CHECKING(for --with-system-ffi)
|
|
diff --git a/setup.py b/setup.py
|
|
index 9130819454..f439cbadc2 100644
|
|
--- a/setup.py
|
|
+++ b/setup.py
|
|
@@ -1475,7 +1475,7 @@ class PyBuildExt(build_ext):
|
|
#
|
|
# More information on Expat can be found at www.libexpat.org.
|
|
#
|
|
- if '--with-system-expat' in sysconfig.get_config_var("CONFIG_ARGS"):
|
|
+ if '--with-expat=system' in sysconfig.get_config_var("CONFIG_ARGS"):
|
|
expat_inc = []
|
|
define_macros = []
|
|
expat_lib = ['expat']
|
|
--
|
|
2.11.0
|
|
|