summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKai Kang <kai.kang@windriver.com>2014-10-29 19:16:08 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-11-04 10:20:33 +0000
commitc51caffe5ac0d49844dcbac7967f609d44c20470 (patch)
tree52e2e4c7a97669094b7edfd14fb84d252e24584f
parent0a947408f32d7ab10d2004e7d9332296b82191a3 (diff)
downloadopenembedded-core-c51caffe5ac0d49844dcbac7967f609d44c20470.tar.gz
openembedded-core-c51caffe5ac0d49844dcbac7967f609d44c20470.tar.bz2
openembedded-core-c51caffe5ac0d49844dcbac7967f609d44c20470.zip
python-2.7.3:remove BOM insertion code
Backport patch from: https://hg.python.org/cpython/rev/af46a001d5ec SysLogHandler converts message to utf8 and adds BOM, supposedly to conform with RFC5424, but the implementation is broken: the RFC specifies that the BOM should prefix only unstructured message part, but current Python implementation puts it in the middle of structured part, thus confusing RFC-compliant receivers. Signed-off-by: yzhu1 <yanjun.zhu@windriver.com> Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
-rw-r--r--meta/recipes-devtools/python/python/remove-BOM-insection-code.patch24
-rw-r--r--meta/recipes-devtools/python/python_2.7.3.bb1
2 files changed, 25 insertions, 0 deletions
diff --git a/meta/recipes-devtools/python/python/remove-BOM-insection-code.patch b/meta/recipes-devtools/python/python/remove-BOM-insection-code.patch
new file mode 100644
index 0000000000..3462620917
--- /dev/null
+++ b/meta/recipes-devtools/python/python/remove-BOM-insection-code.patch
@@ -0,0 +1,24 @@
+# HG changeset patch
+# User Vinay Sajip <vinay_sajip@yahoo.co.uk>
+# Date 1334583503 -3600
+# Node ID af46a001d5eca99a7ff44ed18256c235c5c3f1d0
+# Parent 33bc53e0aa9ea42c6a6bb077d182e62c8c569aa1
+Issue #14452: remove BOM insertion code.
+
+Backport from https://hg.python.org/cpython/rev/af46a001d5ec.
+
+Upstream-Status: Backport
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
+diff --git a/Lib/logging/handlers.py b/Lib/logging/handlers.py
+--- a/Lib/logging/handlers.py
++++ b/Lib/logging/handlers.py
+@@ -821,8 +821,6 @@ class SysLogHandler(logging.Handler):
+ # Message is a string. Convert to bytes as required by RFC 5424
+ if type(msg) is unicode:
+ msg = msg.encode('utf-8')
+- if codecs:
+- msg = codecs.BOM_UTF8 + msg
+ msg = prio + msg
+ try:
+ if self.unixsocket:
diff --git a/meta/recipes-devtools/python/python_2.7.3.bb b/meta/recipes-devtools/python/python_2.7.3.bb
index cc92ebc6a4..f2e6fde4d6 100644
--- a/meta/recipes-devtools/python/python_2.7.3.bb
+++ b/meta/recipes-devtools/python/python_2.7.3.bb
@@ -38,6 +38,7 @@ SRC_URI += "\
file://python-2.7.3-CVE-2014-1912.patch \
file://json-flaw-fix.patch \
file://posix_close.patch \
+ file://remove-BOM-insection-code.patch \
"
S = "${WORKDIR}/Python-${PV}"