python-m2crypto: fix SSLv2 symbol issue

ERROR: Failed to import the "M2Crypto" module: .../usr/lib/python2.7/site-packages/M2Crypto/__m2crypto.so: undefined symbol: SSLv2_method

disable using SSLv2_method if not supported in openssl. This is now the case
with the advent of CVE-2016-0800

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This commit is contained in:
Armin Kuster 2016-03-07 14:14:07 -08:00 committed by Martin Jansa
parent 68c1651eaf
commit 902964a4da
2 changed files with 23 additions and 1 deletions

View File

@ -0,0 +1,20 @@
Upstream-Status: Backport
https://gitlab.com/m2crypto/m2crypto/commit/ac01b38302474920288c1a9eb63fd35fa8d1db5b
Signed-off-by: Armin Kuster <akuster@mvista.com>
Index: M2Crypto-0.21.1/SWIG/_ssl.i
===================================================================
--- M2Crypto-0.21.1.orig/SWIG/_ssl.i
+++ M2Crypto-0.21.1/SWIG/_ssl.i
@@ -48,8 +48,10 @@ extern const char *SSL_alert_desc_string
%rename(ssl_get_alert_desc_v) SSL_alert_desc_string_long;
extern const char *SSL_alert_desc_string_long(int);
+#ifndef OPENSSL_NO_SSL2
%rename(sslv2_method) SSLv2_method;
extern SSL_METHOD *SSLv2_method(void);
+#endif
%rename(sslv3_method) SSLv3_method;
extern SSL_METHOD *SSLv3_method(void);
%rename(sslv23_method) SSLv23_method;

View File

@ -7,7 +7,8 @@ LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENCE;md5=b0e1f0b7d0ce8a62c18b1287b991800e"
SRC_URI = "http://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-${PV}.tar.gz \
file://0001-setup.py-link-in-sysroot-not-in-host-directories.patch"
file://0001-setup.py-link-in-sysroot-not-in-host-directories.patch \
file://dont_try_build_with_SSLv2_when_it_is_not_available.patch"
SRC_URI[md5sum] = "f93d8462ff7646397a9f77a2fe602d17"
SRC_URI[sha256sum] = "25b94498505c2d800ee465db0cc1aff097b1615adc3ac042a1c85ceca264fc0a"
@ -18,6 +19,7 @@ inherit setuptools
SWIG_FEATURES_x86-64 = "-D__x86_64__"
SWIG_FEATURES ?= ""
SWIG_FEATURES += "-DOPENSSL_NO_SSL2"
export SWIG_FEATURES
# Get around a problem with swig, but only if the