summaryrefslogtreecommitdiff
path: root/dev-python/m2crypto
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-06-15 14:57:03 +0100
committerV3n3RiX <venerix@redcorelinux.org>2021-06-15 14:57:03 +0100
commitd18bf1e01b65ee4bf0c804e2843b282d3d4e5d7c (patch)
tree4a95cbc6ffdf13bad6ecbc7f8d5af99631984123 /dev-python/m2crypto
parente748ba9741f6540f4675c23e3e37b73e822c13a4 (diff)
gentoo resync : 15.06.2021
Diffstat (limited to 'dev-python/m2crypto')
-rw-r--r--dev-python/m2crypto/Manifest5
-rw-r--r--dev-python/m2crypto/files/m2crypto-0.37.1-py310.patch119
-rw-r--r--dev-python/m2crypto/m2crypto-0.37.1-r1.ebuild3
-rw-r--r--dev-python/m2crypto/m2crypto-0.38.0.ebuild63
4 files changed, 188 insertions, 2 deletions
diff --git a/dev-python/m2crypto/Manifest b/dev-python/m2crypto/Manifest
index 03c9c09d34bb..4e62d7ac67a2 100644
--- a/dev-python/m2crypto/Manifest
+++ b/dev-python/m2crypto/Manifest
@@ -1,4 +1,7 @@
AUX m2crypto-0.37.1-openssl-fixes.patch 3074 BLAKE2B 3daa583d4f7e04840a9c2f15fc583dcf8e4ee996aee93d9c180ccc4920f36cd2f90e2f2591732597b0108f3944cb3b22d0eb202c8dfd500fccb8e805aa74666d SHA512 fd73a98592026b39341200fc378042b71272dad4c43c63e4da3aafabae4f5a8aadeb41738ca99cca87ebeecb5455abadfe96d0c6640702b14f138f8122dc57ee
+AUX m2crypto-0.37.1-py310.patch 3843 BLAKE2B e983077f9eda65ea63e34f73178429aea8da61021c38ed68a4798857f3b6b37cea9cbd3b8886d4b169521cda243b87bda18de651f60dd53560693c8472374f7d SHA512 0fbc6eecd28e52036df5a74d825c7dba9fe7d3573c88a564607d4514f01631441929d0d02d6bbf6269b0f077c5ee4b0090b91cdb5b38808480623a782f274d51
DIST M2Crypto-0.37.1.tar.gz 1247031 BLAKE2B 3628150b8da15d7356298b6e52e0d8fa7875921a184a0eba3a97eff0588c9e0fee340c92fd486919057d900d6e3b2b711174dde9761fe247848f92ac6434df0a SHA512 9a5e0220704b4897a9ca7efa4b3b57447b9175c52e8039a85bff7bb1a43b709c69f3c8b5903df461f8de39d3f8a20f9bf494df6f5882771846adfe2c03fbea9e
-EBUILD m2crypto-0.37.1-r1.ebuild 1454 BLAKE2B f28129888e0203ff76da8e5fff40d6b165be238bae308b3d15c770f07fa8b02942fea8a60d50a7d07f68d1a27d7088855f80d36f4a16f9d584e9f08ddeb6ecb2 SHA512 b2083b920fecff0abd0bf4702e0494b22c9f6e2b29d8e354c261c0dbc10219c4bb2497b1f5cc891ddc59e73e922f40fae38f8fa2c4beb0fef499235c9235f48e
+DIST M2Crypto-0.38.0.tar.gz 1241269 BLAKE2B 95433090e08ff72cd2b0779491dc38b89eca159b26812e763b5b8973e3d27249a96d5a2c983b59f414184f64beb8e455dc26979310378db89dd2081741d4d17d SHA512 b1e24e3101ce0dd9f17be4cabeddc2ec0f1228b270d74ef2fb38bae8807c5025b031d0743185f06370786a3dd5c3f42129720534dcff07ea4de3c727613f8d20
+EBUILD m2crypto-0.37.1-r1.ebuild 1487 BLAKE2B 13825020a0ab5d5203e238bd5d5cadf719d77c02dfa1b4be8fca51a79b1238360bfc52ae06500ff92c0caec2418c51db8c4c7016d77977304c80a5d6db2531b3 SHA512 2100ed3ca111b84ee5dfbe92f83218a1403981d63f906b49a7d80faddf46f8bbbbaca42da5ec03b304b91dec30dfb296622c9340499ad29c2a55e53b08e96ab6
+EBUILD m2crypto-0.38.0.ebuild 1493 BLAKE2B 575181f2898b4bab5b1612ff5a3fe4cc3fdcf48bbf71249edb17cc987c79f24863bb98f7a94049423f9d3c6a0dcb58ac99012d0db04f021feaf1218c09eae71f SHA512 111c87bd5c72f9d3c9ae6a9147b085a2891b02df483c27c8d8d2d1aff7858cd90a6315cc18629611e8db2c5b31eef7ce418c54983983067f73e9d9a7223fe67c
MISC metadata.xml 380 BLAKE2B 99a1c8e8202bed7c6d0ff8cdff3f17b664791405b082be2b7d72b3fe2b77bf89c886666d9bdce6a96c540b9518042b9d49b9af926ca10ab4c5b3b416182de01c SHA512 f2e3b4228c45471f0132b3bb412f017f4006eb82bd63e187db3efdfd3f412c1db19bdb79d37630bb059f75ef69f110687b8924d22c2aef0101cb40eb3486f1e6
diff --git a/dev-python/m2crypto/files/m2crypto-0.37.1-py310.patch b/dev-python/m2crypto/files/m2crypto-0.37.1-py310.patch
new file mode 100644
index 000000000000..f9be349fc3db
--- /dev/null
+++ b/dev-python/m2crypto/files/m2crypto-0.37.1-py310.patch
@@ -0,0 +1,119 @@
+diff --git a/SWIG/_bio.i b/SWIG/_bio.i
+index 84b76b3..6c090a4 100644
+--- a/SWIG/_bio.i
++++ b/SWIG/_bio.i
+@@ -246,8 +246,8 @@ PyObject *bio_set_cipher(BIO *b, EVP_CIPHER *c, PyObject *key, PyObject *iv, int
+ const void *kbuf, *ibuf;
+ Py_ssize_t klen, ilen;
+
+- if ((PyObject_AsReadBuffer(key, &kbuf, &klen) == -1)
+- || (PyObject_AsReadBuffer(iv, &ibuf, &ilen) == -1))
++ if ((m2_PyObject_AsReadBuffer(key, &kbuf, &klen) == -1)
++ || (m2_PyObject_AsReadBuffer(iv, &ibuf, &ilen) == -1))
+ return NULL;
+
+ BIO_set_cipher(b, (const EVP_CIPHER *)c,
+diff --git a/SWIG/_ec.i b/SWIG/_ec.i
+index f47d593..a492f6f 100644
+--- a/SWIG/_ec.i
++++ b/SWIG/_ec.i
+@@ -466,7 +466,7 @@ EC_KEY* ec_key_from_pubkey_der(PyObject *pubkey) {
+ const unsigned char *tempBuf;
+ EC_KEY *keypair;
+
+- if (PyObject_AsReadBuffer(pubkey, &keypairbuf, &keypairbuflen) == -1)
++ if (m2_PyObject_AsReadBuffer(pubkey, &keypairbuf, &keypairbuflen) == -1)
+ {
+ return NULL;
+ }
+@@ -486,7 +486,7 @@ EC_KEY* ec_key_from_pubkey_params(int nid, PyObject *pubkey) {
+ const unsigned char *tempBuf;
+ EC_KEY *keypair;
+
+- if (PyObject_AsReadBuffer(pubkey, &keypairbuf, &keypairbuflen) == -1)
++ if (m2_PyObject_AsReadBuffer(pubkey, &keypairbuf, &keypairbuflen) == -1)
+ {
+ return NULL;
+ }
+diff --git a/SWIG/_lib.i b/SWIG/_lib.i
+index 954e99b..351134b 100644
+--- a/SWIG/_lib.i
++++ b/SWIG/_lib.i
+@@ -137,8 +137,8 @@ m2_PyObject_AsReadBuffer(PyObject * obj, const void **buffer,
+ len = view.len;
+ }
+ } else {
+- if ((ret = PyObject_AsReadBuffer(obj, buffer, &len)) != 0)
+- return ret;
++ PyErr_SetString(PyExc_TypeError, "expected a readable buffer object");
++ return -1;
+ }
+ if (len > INT_MAX) {
+ m2_PyBuffer_Release(obj, &view);
+@@ -171,11 +171,8 @@ static int m2_PyObject_GetBufferInt(PyObject *obj, Py_buffer *view, int flags)
+ if (PyObject_CheckBuffer(obj))
+ ret = PyObject_GetBuffer(obj, view, flags);
+ else {
+- const void *buf;
+-
+- ret = PyObject_AsReadBuffer(obj, &buf, &view->len);
+- if (ret == 0)
+- view->buf = (void *)buf;
++ PyErr_SetString(PyExc_TypeError, "expected a readable buffer object");
++ return -1;
+ }
+ if (ret)
+ return ret;
+@@ -633,7 +630,7 @@ BIGNUM *hex_to_bn(PyObject *value) {
+ }
+ }
+ else {
+- if (PyObject_AsReadBuffer(value, &vbuf, &vlen) == -1)
++ if (m2_PyObject_AsReadBuffer(value, &vbuf, &vlen) == -1)
+ return NULL;
+ }
+
+@@ -665,7 +662,7 @@ BIGNUM *dec_to_bn(PyObject *value) {
+ }
+ }
+ else {
+- if (PyObject_AsReadBuffer(value, &vbuf, &vlen) == -1)
++ if (m2_PyObject_AsReadBuffer(value, &vbuf, &vlen) == -1)
+ return NULL;
+ }
+
+diff --git a/SWIG/_rc4.i b/SWIG/_rc4.i
+index eb4747e..6af2dc6 100644
+--- a/SWIG/_rc4.i
++++ b/SWIG/_rc4.i
+@@ -46,7 +46,7 @@ PyObject *rc4_update(RC4_KEY *key, PyObject *in) {
+ Py_ssize_t len;
+ void *out;
+
+- if (PyObject_AsReadBuffer(in, &buf, &len) == -1)
++ if (m2_PyObject_AsReadBuffer(in, &buf, &len) == -1)
+ return NULL;
+
+ if (!(out = PyMem_Malloc(len))) {
+diff --git a/SWIG/_util.i b/SWIG/_util.i
+index bc2ee61..18e446a 100644
+--- a/SWIG/_util.i
++++ b/SWIG/_util.i
+@@ -22,7 +22,7 @@ PyObject *util_hex_to_string(PyObject *blob) {
+ char *ret;
+ Py_ssize_t len;
+
+- if (PyObject_AsReadBuffer(blob, &buf, &len) == -1)
++ if (m2_PyObject_AsReadBuffer(blob, &buf, &len) == -1)
+ return NULL;
+
+ ret = hex_to_string((unsigned char *)buf, len);
+@@ -44,7 +44,7 @@ PyObject *util_string_to_hex(PyObject *blob) {
+ Py_ssize_t len0;
+ long len;
+
+- if (PyObject_AsReadBuffer(blob, &buf, &len0) == -1)
++ if (m2_PyObject_AsReadBuffer(blob, &buf, &len0) == -1)
+ return NULL;
+
+ len = len0;
diff --git a/dev-python/m2crypto/m2crypto-0.37.1-r1.ebuild b/dev-python/m2crypto/m2crypto-0.37.1-r1.ebuild
index b6c17695032a..86a235286642 100644
--- a/dev-python/m2crypto/m2crypto-0.37.1-r1.ebuild
+++ b/dev-python/m2crypto/m2crypto-0.37.1-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_COMPAT=( python3_{8..10} )
PYTHON_REQ_USE="threads(+)"
inherit distutils-r1 toolchain-funcs
@@ -31,6 +31,7 @@ DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/${P}-openssl-fixes.patch"
+ "${FILESDIR}/${P}-py310.patch"
)
swig_define() {
diff --git a/dev-python/m2crypto/m2crypto-0.38.0.ebuild b/dev-python/m2crypto/m2crypto-0.38.0.ebuild
new file mode 100644
index 000000000000..67ffb9066efb
--- /dev/null
+++ b/dev-python/m2crypto/m2crypto-0.38.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 2018-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 toolchain-funcs
+
+MY_PN="M2Crypto"
+DESCRIPTION="A Python crypto and SSL toolkit"
+HOMEPAGE="https://gitlab.com/m2crypto/m2crypto https://pypi.org/project/M2Crypto/"
+SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_PN}-${PV}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ >=dev-lang/swig-2.0.9
+ test? ( dev-python/parameterized[${PYTHON_USEDEP}] )
+"
+RDEPEND="
+ dev-libs/openssl:0=
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests setup.py
+
+swig_define() {
+ local x
+ for x; do
+ if tc-cpp-is-true "defined(${x})"; then
+ SWIG_FEATURES+=" -D${x}"
+ fi
+ done
+}
+
+src_prepare() {
+ # relies on very exact clock behavior which apparently fails
+ # with inconvenient CONFIG_HZ*
+ sed -e 's:test_server_simple_timeouts:_&:' \
+ -i tests/test_ssl.py || die
+ distutils-r1_src_prepare
+}
+
+python_compile() {
+ # setup.py looks at platform.machine() to determine swig options.
+ # For exotic ABIs, we need to give swig a hint.
+ local -x SWIG_FEATURES=
+
+ # https://bugs.gentoo.org/617946
+ swig_define __ILP32__
+
+ # https://bugs.gentoo.org/674112
+ swig_define __ARM_PCS_VFP
+
+ distutils-r1_python_compile --openssl="${ESYSROOT}"/usr
+}