public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-python/cryptography/, dev-python/cryptography/files/
@ 2017-02-26 16:44 Luca Barbato
  0 siblings, 0 replies; 7+ messages in thread
From: Luca Barbato @ 2017-02-26 16:44 UTC (permalink / raw
  To: gentoo-commits

commit:     7cb9bf4b1803801f4670546a08e56a1a2b3b9756
Author:     Luca Barbato <lu_zero <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 26 16:43:28 2017 +0000
Commit:     Luca Barbato <lu_zero <AT> gentoo <DOT> org>
CommitDate: Sun Feb 26 16:43:56 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7cb9bf4b

dev-python/cryptography: Fix libressl support

Package-Manager: portage-2.3.3

 dev-python/cryptography/cryptography-1.7.2.ebuild        |  1 +
 .../files/cryptography-1.7.2-libressl-2.5.1.patch        | 16 ++++++++++++++++
 2 files changed, 17 insertions(+)

diff --git a/dev-python/cryptography/cryptography-1.7.2.ebuild b/dev-python/cryptography/cryptography-1.7.2.ebuild
index c8c7f9b25d..85f516caaf 100644
--- a/dev-python/cryptography/cryptography-1.7.2.ebuild
+++ b/dev-python/cryptography/cryptography-1.7.2.ebuild
@@ -43,6 +43,7 @@ DEPEND="${RDEPEND}
 	)"
 
 DOCS=( AUTHORS.rst CONTRIBUTING.rst README.rst )
+PATCHES=( "${FILESDIR}"/${P}-libressl-2.5.1.patch )
 
 python_test() {
 	distutils_install_for_testing

diff --git a/dev-python/cryptography/files/cryptography-1.7.2-libressl-2.5.1.patch b/dev-python/cryptography/files/cryptography-1.7.2-libressl-2.5.1.patch
new file mode 100644
index 0000000000..38fce99a5e
--- /dev/null
+++ b/dev-python/cryptography/files/cryptography-1.7.2-libressl-2.5.1.patch
@@ -0,0 +1,16 @@
+diff -urN cryptography-1.7.2.orig/src/_cffi_src/openssl/x509_vfy.py cryptography-1.7.2/src/_cffi_src/openssl/x509_vfy.py
+--- cryptography-1.7.2.orig/src/_cffi_src/openssl/x509_vfy.py	2017-01-27 15:09:52.000000000 +0000
++++ cryptography-1.7.2/src/_cffi_src/openssl/x509_vfy.py	2017-02-26 15:15:09.889855740 +0000
+@@ -221,10 +221,12 @@
+ static const long X509_V_ERR_SUITE_B_INVALID_SIGNATURE_ALGORITHM = 0;
+ static const long X509_V_ERR_SUITE_B_LOS_NOT_ALLOWED = 0;
+ static const long X509_V_ERR_SUITE_B_CANNOT_SIGN_P_384_WITH_P_256 = 0;
++#ifndef X509_V_ERR_HOSTNAME_MISMATCH
+ static const long X509_V_ERR_HOSTNAME_MISMATCH = 0;
+ static const long X509_V_ERR_EMAIL_MISMATCH = 0;
+ static const long X509_V_ERR_IP_ADDRESS_MISMATCH = 0;
+ #endif
++#endif
+
+ /* OpenSSL 1.0.2beta2+ verification parameters */
+ #if CRYPTOGRAPHY_OPENSSL_102BETA2_OR_GREATER && \


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-python/cryptography/, dev-python/cryptography/files/
@ 2017-05-03 11:02 Michał Górny
  0 siblings, 0 replies; 7+ messages in thread
From: Michał Górny @ 2017-05-03 11:02 UTC (permalink / raw
  To: gentoo-commits

commit:     fb7e3ccb9c8150e648ee15353cacfb084eb22284
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed May  3 10:36:38 2017 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed May  3 11:02:25 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fb7e3ccb

dev-python/cryptography: Clean old versions up

 dev-python/cryptography/Manifest                   |  1 -
 dev-python/cryptography/cryptography-1.3.4.ebuild  | 47 ----------------------
 ...cryptography-1.2.2-openssl-1.0.2g-mem_buf.patch | 31 --------------
 3 files changed, 79 deletions(-)

diff --git a/dev-python/cryptography/Manifest b/dev-python/cryptography/Manifest
index 6392afcadda..92d54933c97 100644
--- a/dev-python/cryptography/Manifest
+++ b/dev-python/cryptography/Manifest
@@ -1,4 +1,3 @@
-DIST cryptography-1.3.4.tar.gz 384109 SHA256 423ff890c01be7c70dbfeaa967eeef5146f1a43a5f810ffdc07b178e48a105a9 SHA512 abbc027433658702d2331282c9f63d99ea2eb42f5cdfe066b2b0ae6d9b86a35e23891716bb2e9e2ca707aa0d38fb69cba22ec5d95d2b9073047444fdae7a9224 WHIRLPOOL 5bd007cfe304620a7237b0f63fbe87ab22bd1cc252941f4815398382122b1c56c5a22e2dc35ce86aba2c2b2d9403de3313bafde23a3695bd26e4eb0f23c9dea9
 DIST cryptography-1.7.1.tar.gz 420673 SHA256 953fef7d40a49a795f4d955c5ce4338abcec5dea822ed0414ed30348303fdb4c SHA512 fb88b0ee9e314526fcdbb6d35da409b7335c7408a69d2350c58379471d2b9d76021010955629cf776d26312f22d4f8aa3f135955a19dfbff9d602176c9bbfd40 WHIRLPOOL 24b705889b95b568000600662ec82e3f5571582525db3571f3285b99f985b0a21eefd14dccc577700bc082891f7d3c563ac78a8bfd8d810da3ff38914ae5a86d
 DIST cryptography-1.7.2.tar.gz 420867 SHA256 878cb68b3da3d493ffd68f36db11c29deee623671d3287c3f8d685117ffda9a9 SHA512 8ddd119385064e1f8288ff318ec16f500b5c125a3811ccb306aeb2664fac495fcdd3cb5a7cbacd10156505c9526b9cdbd66860b35bbcd2f9a6bb285dd6cba8c5 WHIRLPOOL 531265115a6573c54e2cf85a03f1ed0ebe033fd7818168a3bcda938458f9a32464d7de0c226f46a300635ee52e4995285889bb693bc56f77f816bc81d52bfc61
 DIST cryptography-1.8.1.tar.gz 423560 SHA256 323524312bb467565ebca7e50c8ae5e9674e544951d28a2904a50012a8828190 SHA512 273c8ca4ad6c9d1151a8a731d148d02e619e14e37df25dc26030b0a90f895b88fbf4d3e320aec5ea7af4a8fcc58f720c61f48968f912c69156d4e0e794743345 WHIRLPOOL ff760c9dc7dfbba355afde726a9154bcf45102e135b95b431aab5ac34c8003edccafa646b51ca02296aa55f244b0ff752d8d1b775cb76a1c9f15d347d505e8ce

diff --git a/dev-python/cryptography/cryptography-1.3.4.ebuild b/dev-python/cryptography/cryptography-1.3.4.ebuild
deleted file mode 100644
index b2d90237b1b..00000000000
--- a/dev-python/cryptography/cryptography-1.3.4.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy )
-PYTHON_REQ_USE="threads(+)"
-
-inherit distutils-r1
-
-DESCRIPTION="Library providing cryptographic recipes and primitives"
-HOMEPAGE="https://github.com/pyca/cryptography/ https://pypi.python.org/pypi/cryptography/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="|| ( Apache-2.0 BSD )"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux"
-IUSE="libressl test"
-
-RDEPEND="
-	!libressl? ( dev-libs/openssl:0= )
-	libressl? ( dev-libs/libressl )
-	$(python_gen_cond_dep '>=dev-python/cffi-1.4.1:=[${PYTHON_USEDEP}]' 'python*')
-	$(python_gen_cond_dep 'dev-python/enum34[${PYTHON_USEDEP}]' python2_7 python3_3 pypy)
-	>=dev-python/idna-2.0[${PYTHON_USEDEP}]
-	>=dev-python/pyasn1-0.1.8[${PYTHON_USEDEP}]
-	dev-python/setuptools[${PYTHON_USEDEP}]
-	>=dev-python/six-1.4.1[${PYTHON_USEDEP}]
-	$(python_gen_cond_dep '>=virtual/pypy-2.6.0' pypy )
-	virtual/python-ipaddress[${PYTHON_USEDEP}]
-	"
-DEPEND="${RDEPEND}
-	>=dev-python/setuptools-1.0[${PYTHON_USEDEP}]
-	test? (
-		~dev-python/cryptography-vectors-${PV}[${PYTHON_USEDEP}]
-		dev-python/hypothesis[${PYTHON_USEDEP}]
-		dev-python/iso8601[${PYTHON_USEDEP}]
-		dev-python/pretend[${PYTHON_USEDEP}]
-		dev-python/pyasn1-modules[${PYTHON_USEDEP}]
-		dev-python/pytest[${PYTHON_USEDEP}]
-	)"
-
-DOCS=( AUTHORS.rst CONTRIBUTING.rst README.rst )
-
-python_test() {
-	py.test -v -v -x || die "Tests fail with ${EPYTHON}"
-}

diff --git a/dev-python/cryptography/files/cryptography-1.2.2-openssl-1.0.2g-mem_buf.patch b/dev-python/cryptography/files/cryptography-1.2.2-openssl-1.0.2g-mem_buf.patch
deleted file mode 100644
index fbe690e8360..00000000000
--- a/dev-python/cryptography/files/cryptography-1.2.2-openssl-1.0.2g-mem_buf.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From df779dfec9ce87b79e48448aea3c597a4716b29e Mon Sep 17 00:00:00 2001
-From: Paul Kehrer <paul.l.kehrer@gmail.com>
-Date: Tue, 1 Mar 2016 14:22:32 -0600
-Subject: [PATCH] move BIO_new_mem_buf to macros to handle 1.0.2g signature
- change
-
----
- src/_cffi_src/openssl/bio.py | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/_cffi_src/openssl/bio.py b/src/_cffi_src/openssl/bio.py
-index ac86683..6439e63 100644
---- a/src/_cffi_src/openssl/bio.py
-+++ b/src/_cffi_src/openssl/bio.py
-@@ -99,7 +99,6 @@
- BIO *BIO_next(BIO *);
- BIO *BIO_find_type(BIO *, int);
- BIO_METHOD *BIO_s_mem(void);
--BIO *BIO_new_mem_buf(void *, int);
- BIO_METHOD *BIO_s_file(void);
- BIO *BIO_new_file(const char *, const char *);
- BIO *BIO_new_fp(FILE *, int);
-@@ -127,6 +126,8 @@
- """
- 
- MACROS = """
-+/* BIO_new_mem_buf became const void * in 1.0.2g */
-+BIO *BIO_new_mem_buf(void *, int);
- long BIO_set_fd(BIO *, long, int);
- long BIO_get_fd(BIO *, char *);
- long BIO_set_mem_eof_return(BIO *, int);


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-python/cryptography/, dev-python/cryptography/files/
@ 2018-04-13  1:07 Aaron Bauman
  0 siblings, 0 replies; 7+ messages in thread
From: Aaron Bauman @ 2018-04-13  1:07 UTC (permalink / raw
  To: gentoo-commits

commit:     079600f41f80b96f77ca942cd2e270c022330deb
Author:     Aaron Bauman <bman <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 13 01:07:11 2018 +0000
Commit:     Aaron Bauman <bman <AT> gentoo <DOT> org>
CommitDate: Fri Apr 13 01:07:27 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=079600f4

dev-python/cryptography: fix building with LibreSSL

These patches fix building against >dev-libs/libressl-2.5 for all
versions of dev-python/cryptography.

Closes: https://bugs.gentoo.org/651168
Package-Manager: Portage-2.3.28, Repoman-2.3.9

 ....0.2-r1.ebuild => cryptography-1.7.1-r1.ebuild} | 25 ++++----
 .../cryptography/cryptography-2.0.2-r1.ebuild      |  4 +-
 ....0.2-r1.ebuild => cryptography-2.1.4-r1.ebuild} | 25 ++++++--
 .../files/cryptography-1.7.1-libressl251.patch     | 17 +++++
 .../cryptography-2.1.4-libressl-2.7-x509.patch     | 23 +++++++
 .../cryptography-2.1.4-libressl-2.7-x509_vfy.patch | 73 ++++++++++++++++++++++
 6 files changed, 149 insertions(+), 18 deletions(-)

diff --git a/dev-python/cryptography/cryptography-2.0.2-r1.ebuild b/dev-python/cryptography/cryptography-1.7.1-r1.ebuild
similarity index 66%
copy from dev-python/cryptography/cryptography-2.0.2-r1.ebuild
copy to dev-python/cryptography/cryptography-1.7.1-r1.ebuild
index e1a1c26f4aa..c6928ab74a3 100644
--- a/dev-python/cryptography/cryptography-2.0.2-r1.ebuild
+++ b/dev-python/cryptography/cryptography-1.7.1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -6,7 +6,7 @@ EAPI=6
 PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy{,3} )
 PYTHON_REQ_USE="threads(+)"
 
-inherit distutils-r1 flag-o-matic
+inherit distutils-r1
 
 DESCRIPTION="Library providing cryptographic recipes and primitives"
 HOMEPAGE="https://github.com/pyca/cryptography/ https://pypi.python.org/pypi/cryptography/"
@@ -14,18 +14,19 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
 
 LICENSE="|| ( Apache-2.0 BSD )"
 SLOT="0"
-KEYWORDS="amd64 arm arm64 hppa ia64 ~mips ppc ppc64 x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
 IUSE="libressl test"
 
 RDEPEND="
-	!libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist(-)] )
-	libressl? ( dev-libs/libressl )
-	$(python_gen_cond_dep '>=dev-python/cffi-1.7:=[${PYTHON_USEDEP}]' 'python*')
-	$(python_gen_cond_dep 'dev-python/enum34[${PYTHON_USEDEP}]' python2_7 pypy{,3})
-	>=dev-python/idna-2.1[${PYTHON_USEDEP}]
-	>=dev-python/asn1crypto-0.21.0[${PYTHON_USEDEP}]
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:0= )
+	$(python_gen_cond_dep '>=dev-python/cffi-1.4.1:=[${PYTHON_USEDEP}]' 'python*')
+	$(python_gen_cond_dep 'dev-python/enum34[${PYTHON_USEDEP}]' python2_7 python3_3 pypy{,3})
+	>=dev-python/idna-2.0[${PYTHON_USEDEP}]
+	>=dev-python/pyasn1-0.1.8[${PYTHON_USEDEP}]
 	dev-python/setuptools[${PYTHON_USEDEP}]
 	>=dev-python/six-1.4.1[${PYTHON_USEDEP}]
+	$(python_gen_cond_dep '>=virtual/pypy-2.6.0' pypy )
 	virtual/python-ipaddress[${PYTHON_USEDEP}]
 	"
 DEPEND="${RDEPEND}
@@ -42,10 +43,10 @@ DEPEND="${RDEPEND}
 
 DOCS=( AUTHORS.rst CONTRIBUTING.rst README.rst )
 
-python_configure_all() {
-	append-cflags $(test-flags-CC -pthread)
-}
+PATCHES=( "${FILESDIR}"/${P}-libressl251.patch )
 
 python_test() {
+	distutils_install_for_testing
+
 	py.test -v -v -x || die "Tests fail with ${EPYTHON}"
 }

diff --git a/dev-python/cryptography/cryptography-2.0.2-r1.ebuild b/dev-python/cryptography/cryptography-2.0.2-r1.ebuild
index e1a1c26f4aa..57b42e13bd3 100644
--- a/dev-python/cryptography/cryptography-2.0.2-r1.ebuild
+++ b/dev-python/cryptography/cryptography-2.0.2-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -19,7 +19,7 @@ IUSE="libressl test"
 
 RDEPEND="
 	!libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist(-)] )
-	libressl? ( dev-libs/libressl )
+	libressl? ( dev-libs/libressl:0= )
 	$(python_gen_cond_dep '>=dev-python/cffi-1.7:=[${PYTHON_USEDEP}]' 'python*')
 	$(python_gen_cond_dep 'dev-python/enum34[${PYTHON_USEDEP}]' python2_7 pypy{,3})
 	>=dev-python/idna-2.1[${PYTHON_USEDEP}]

diff --git a/dev-python/cryptography/cryptography-2.0.2-r1.ebuild b/dev-python/cryptography/cryptography-2.1.4-r1.ebuild
similarity index 65%
copy from dev-python/cryptography/cryptography-2.0.2-r1.ebuild
copy to dev-python/cryptography/cryptography-2.1.4-r1.ebuild
index e1a1c26f4aa..27a23caab64 100644
--- a/dev-python/cryptography/cryptography-2.0.2-r1.ebuild
+++ b/dev-python/cryptography/cryptography-2.1.4-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -14,12 +14,24 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
 
 LICENSE="|| ( Apache-2.0 BSD )"
 SLOT="0"
-KEYWORDS="amd64 arm arm64 hppa ia64 ~mips ppc ppc64 x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
 IUSE="libressl test"
 
+# the openssl 1.0.2l-r1 needs to be updated again :(
+# It'd theb be able to go into the || section again
+#=dev-libs/openssl-1.0.2l-r1:0
+# the following is the original section, disallowing bindist entirely
+#!libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist(-)] )
 RDEPEND="
-	!libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist(-)] )
-	libressl? ( dev-libs/libressl )
+	!libressl? (
+		dev-libs/openssl:0= (
+			|| (
+				dev-libs/openssl:0[-bindist(-)]
+				>=dev-libs/openssl-1.1.0g-r1:0
+			)
+		)
+	)
+	libressl? ( dev-libs/libressl:0= )
 	$(python_gen_cond_dep '>=dev-python/cffi-1.7:=[${PYTHON_USEDEP}]' 'python*')
 	$(python_gen_cond_dep 'dev-python/enum34[${PYTHON_USEDEP}]' python2_7 pypy{,3})
 	>=dev-python/idna-2.1[${PYTHON_USEDEP}]
@@ -42,6 +54,11 @@ DEPEND="${RDEPEND}
 
 DOCS=( AUTHORS.rst CONTRIBUTING.rst README.rst )
 
+PATCHES=(
+	"${FILESDIR}"/${PN}-2.1.4-libressl-2.7-x509.patch
+	"${FILESDIR}"/${PN}-2.1.4-libressl-2.7-x509_vfy.patch
+)
+
 python_configure_all() {
 	append-cflags $(test-flags-CC -pthread)
 }

diff --git a/dev-python/cryptography/files/cryptography-1.7.1-libressl251.patch b/dev-python/cryptography/files/cryptography-1.7.1-libressl251.patch
new file mode 100644
index 00000000000..a23ed7658f8
--- /dev/null
+++ b/dev-python/cryptography/files/cryptography-1.7.1-libressl251.patch
@@ -0,0 +1,17 @@
+diff -Naur cryptography-1.7.1.orig/src/_cffi_src/openssl/x509_vfy.py cryptography-1.7.1/src/_cffi_src/openssl/x509_vfy.py
+--- cryptography-1.7.1.orig/src/_cffi_src/openssl/x509_vfy.py	2017-02-01 12:29:59.080728417 -0800
++++ cryptography-1.7.1/src/_cffi_src/openssl/x509_vfy.py	2017-02-01 12:31:48.017895844 -0800
+@@ -221,10 +221,13 @@
+ static const long X509_V_ERR_SUITE_B_INVALID_SIGNATURE_ALGORITHM = 0;
+ static const long X509_V_ERR_SUITE_B_LOS_NOT_ALLOWED = 0;
+ static const long X509_V_ERR_SUITE_B_CANNOT_SIGN_P_384_WITH_P_256 = 0;
++#if !CRYPTOGRAPHY_OPENSSL_102BETA2_OR_GREATER || \
++    (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2050100fL)
+ static const long X509_V_ERR_HOSTNAME_MISMATCH = 0;
+ static const long X509_V_ERR_EMAIL_MISMATCH = 0;
+ static const long X509_V_ERR_IP_ADDRESS_MISMATCH = 0;
++#endif
+ #endif
+ 
+ /* OpenSSL 1.0.2beta2+ verification parameters */
+ #if CRYPTOGRAPHY_OPENSSL_102BETA2_OR_GREATER && \

diff --git a/dev-python/cryptography/files/cryptography-2.1.4-libressl-2.7-x509.patch b/dev-python/cryptography/files/cryptography-2.1.4-libressl-2.7-x509.patch
new file mode 100644
index 00000000000..9a14d460601
--- /dev/null
+++ b/dev-python/cryptography/files/cryptography-2.1.4-libressl-2.7-x509.patch
@@ -0,0 +1,23 @@
+diff -ur a/src/_cffi_src/openssl/x509.py b/src/_cffi_src/openssl/x509.py
+--- a/src/_cffi_src/openssl/x509.py	2017-07-27 05:11:29.000000000 +0200
++++ b/src/_cffi_src/openssl/x509.py	2018-03-23 10:28:00.387774214 +0100
+@@ -254,8 +254,7 @@
+ 
+ const X509_ALGOR *X509_get0_tbs_sigalg(const X509 *);
+ 
+-/* in 1.1.0 becomes const ASN1_BIT_STRING, const X509_ALGOR */
+-void X509_get0_signature(ASN1_BIT_STRING **, X509_ALGOR **, X509 *);
++void X509_get0_signature(const ASN1_BIT_STRING **, const X509_ALGOR **, const X509 *);
+ 
+ long X509_get_version(X509 *);
+ 
+@@ -338,7 +337,8 @@
+ CUSTOMIZATIONS = """
+ /* Added in 1.0.2 beta but we need it in all versions now due to the great
+    opaquing. */
+-#if CRYPTOGRAPHY_OPENSSL_LESS_THAN_102
++#if CRYPTOGRAPHY_OPENSSL_LESS_THAN_102 && \
++    (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL)
+ /* from x509/x_x509.c version 1.0.2 */
+ void X509_get0_signature(ASN1_BIT_STRING **psig, X509_ALGOR **palg,
+                          const X509 *x)

diff --git a/dev-python/cryptography/files/cryptography-2.1.4-libressl-2.7-x509_vfy.patch b/dev-python/cryptography/files/cryptography-2.1.4-libressl-2.7-x509_vfy.patch
new file mode 100644
index 00000000000..a1c93cf0c66
--- /dev/null
+++ b/dev-python/cryptography/files/cryptography-2.1.4-libressl-2.7-x509_vfy.patch
@@ -0,0 +1,73 @@
+$OpenBSD: patch-src__cffi_src_openssl_x509_vfy_py,v 1.7 2018/02/22 18:49:16 sthen Exp $
+
+--- a/src/_cffi_src/openssl/x509_vfy.py
++++ b/src/_cffi_src/openssl/x509_vfy.py
+@@ -204,7 +204,7 @@ int sk_X509_OBJECT_num(Cryptography_STACK_OF_X509_OBJE
+ X509_OBJECT *sk_X509_OBJECT_value(Cryptography_STACK_OF_X509_OBJECT *, int);
+ X509_VERIFY_PARAM *X509_STORE_get0_param(X509_STORE *);
+ Cryptography_STACK_OF_X509_OBJECT *X509_STORE_get0_objects(X509_STORE *);
+-X509 *X509_OBJECT_get0_X509(X509_OBJECT *);
++X509 *X509_OBJECT_get0_X509(const X509_OBJECT *);
+ int X509_OBJECT_get_type(const X509_OBJECT *);
+ 
+ /* added in 1.1.0 */
+@@ -220,14 +220,11 @@ static const long Cryptography_HAS_102_VERIFICATION_ER
+ static const long Cryptography_HAS_102_VERIFICATION_PARAMS = 1;
+ #else
+ static const long Cryptography_HAS_102_VERIFICATION_ERROR_CODES = 0;
++#if LIBRESSL_VERSION_NUMBER >= 0x2070000fL
++static const long Cryptography_HAS_102_VERIFICATION_PARAMS = 1;
++#else
+ static const long Cryptography_HAS_102_VERIFICATION_PARAMS = 0;
+ 
+-static const long X509_V_ERR_SUITE_B_INVALID_VERSION = 0;
+-static const long X509_V_ERR_SUITE_B_INVALID_ALGORITHM = 0;
+-static const long X509_V_ERR_SUITE_B_INVALID_CURVE = 0;
+-static const long X509_V_ERR_SUITE_B_INVALID_SIGNATURE_ALGORITHM = 0;
+-static const long X509_V_ERR_SUITE_B_LOS_NOT_ALLOWED = 0;
+-static const long X509_V_ERR_SUITE_B_CANNOT_SIGN_P_384_WITH_P_256 = 0;
+ /* These 3 defines are unavailable in LibreSSL 2.5.x, but may be added
+    in the future... */
+ #ifndef X509_V_ERR_HOSTNAME_MISMATCH
+@@ -240,12 +237,6 @@ static const long X509_V_ERR_EMAIL_MISMATCH = 0;
+ static const long X509_V_ERR_IP_ADDRESS_MISMATCH = 0;
+ #endif
+ 
+-/* X509_V_FLAG_TRUSTED_FIRST is also new in 1.0.2+, but it is added separately
+-   below because it shows up in some earlier 3rd party OpenSSL packages. */
+-static const long X509_V_FLAG_SUITEB_128_LOS_ONLY = 0;
+-static const long X509_V_FLAG_SUITEB_192_LOS = 0;
+-static const long X509_V_FLAG_SUITEB_128_LOS = 0;
+-
+ int (*X509_VERIFY_PARAM_set1_host)(X509_VERIFY_PARAM *, const char *,
+                                    size_t) = NULL;
+ int (*X509_VERIFY_PARAM_set1_email)(X509_VERIFY_PARAM *, const char *,
+@@ -257,6 +248,19 @@ void (*X509_VERIFY_PARAM_set_hostflags)(X509_VERIFY_PA
+                                         unsigned int) = NULL;
+ #endif
+ 
++static const long X509_V_ERR_SUITE_B_INVALID_VERSION = 0;
++static const long X509_V_ERR_SUITE_B_INVALID_ALGORITHM = 0;
++static const long X509_V_ERR_SUITE_B_INVALID_CURVE = 0;
++static const long X509_V_ERR_SUITE_B_INVALID_SIGNATURE_ALGORITHM = 0;
++static const long X509_V_ERR_SUITE_B_LOS_NOT_ALLOWED = 0;
++static const long X509_V_ERR_SUITE_B_CANNOT_SIGN_P_384_WITH_P_256 = 0;
++/* X509_V_FLAG_TRUSTED_FIRST is also new in 1.0.2+, but it is added separately
++   below because it shows up in some earlier 3rd party OpenSSL packages. */
++static const long X509_V_FLAG_SUITEB_128_LOS_ONLY = 0;
++static const long X509_V_FLAG_SUITEB_192_LOS = 0;
++static const long X509_V_FLAG_SUITEB_128_LOS = 0;
++#endif
++
+ /* OpenSSL 1.0.2+ or Solaris's backport */
+ #ifdef X509_V_FLAG_PARTIAL_CHAIN
+ static const long Cryptography_HAS_X509_V_FLAG_PARTIAL_CHAIN = 1;
+@@ -292,7 +296,7 @@ X509 *X509_STORE_CTX_get0_cert(X509_STORE_CTX *ctx)
+     return ctx->cert;
+ }
+ 
+-X509 *X509_OBJECT_get0_X509(X509_OBJECT *x) {
++X509 *X509_OBJECT_get0_X509(const X509_OBJECT *x) {
+     return x->data.x509;
+ }
+ #endif


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-python/cryptography/, dev-python/cryptography/files/
@ 2021-05-15 11:51 Michał Górny
  0 siblings, 0 replies; 7+ messages in thread
From: Michał Górny @ 2021-05-15 11:51 UTC (permalink / raw
  To: gentoo-commits

commit:     5afe2baaffb4746f159b3d82f6ed28c33c8f5e18
Author:     Ekaterina Vaartis <vaartis <AT> kotobank <DOT> ch>
AuthorDate: Fri May 14 20:05:14 2021 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat May 15 11:51:32 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5afe2baa

dev-python/cryptography: bump to r1 and backport the fixes for 3.10

Signed-off-by: Ekaterina Vaartis <vaartis <AT> kotobank.ch>
Closes: https://github.com/gentoo/gentoo/pull/20795
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 ...y-3.4.7.ebuild => cryptography-3.4.7-r1.ebuild} |   6 +-
 .../files/cryptography-3.4.7-py310.patch           | 301 +++++++++++++++++++++
 2 files changed, 306 insertions(+), 1 deletion(-)

diff --git a/dev-python/cryptography/cryptography-3.4.7.ebuild b/dev-python/cryptography/cryptography-3.4.7-r1.ebuild
similarity index 95%
rename from dev-python/cryptography/cryptography-3.4.7.ebuild
rename to dev-python/cryptography/cryptography-3.4.7-r1.ebuild
index 59b98063ce3..1a0d6a6f5d9 100644
--- a/dev-python/cryptography/cryptography-3.4.7.ebuild
+++ b/dev-python/cryptography/cryptography-3.4.7-r1.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=7
 
-PYTHON_COMPAT=( python3_{7..9} pypy3 )
+PYTHON_COMPAT=( python3_{7..10} pypy3 )
 PYTHON_REQ_USE="threads(+)"
 
 inherit distutils-r1 multiprocessing
@@ -41,6 +41,10 @@ DEPEND="
 	"
 RDEPEND+=${DEPEND}
 
+PATCHES=(
+	"${FILESDIR}/${P}-py310.patch"
+)
+
 src_prepare() {
 	default
 

diff --git a/dev-python/cryptography/files/cryptography-3.4.7-py310.patch b/dev-python/cryptography/files/cryptography-3.4.7-py310.patch
new file mode 100644
index 00000000000..d961af82b77
--- /dev/null
+++ b/dev-python/cryptography/files/cryptography-3.4.7-py310.patch
@@ -0,0 +1,301 @@
+diff --git a/src/cryptography/exceptions.py b/src/cryptography/exceptions.py
+index f5860590..3bd98d82 100644
+--- a/src/cryptography/exceptions.py
++++ b/src/cryptography/exceptions.py
+@@ -3,10 +3,10 @@
+ # for complete details.
+ 
+ 
+-from enum import Enum
++from cryptography import utils
+ 
+ 
+-class _Reasons(Enum):
++class _Reasons(utils.Enum):
+     BACKEND_MISSING_INTERFACE = 0
+     UNSUPPORTED_HASH = 1
+     UNSUPPORTED_CIPHER = 2
+diff --git a/src/cryptography/hazmat/primitives/_serialization.py b/src/cryptography/hazmat/primitives/_serialization.py
+index 96a5ed9b..160a6b89 100644
+--- a/src/cryptography/hazmat/primitives/_serialization.py
++++ b/src/cryptography/hazmat/primitives/_serialization.py
+@@ -3,13 +3,14 @@
+ # for complete details.
+ 
+ import abc
+-from enum import Enum
++
++from cryptography import utils
+ 
+ # This exists to break an import cycle. These classes are normally accessible
+ # from the serialization module.
+ 
+ 
+-class Encoding(Enum):
++class Encoding(utils.Enum):
+     PEM = "PEM"
+     DER = "DER"
+     OpenSSH = "OpenSSH"
+@@ -18,14 +19,14 @@ class Encoding(Enum):
+     SMIME = "S/MIME"
+ 
+ 
+-class PrivateFormat(Enum):
++class PrivateFormat(utils.Enum):
+     PKCS8 = "PKCS8"
+     TraditionalOpenSSL = "TraditionalOpenSSL"
+     Raw = "Raw"
+     OpenSSH = "OpenSSH"
+ 
+ 
+-class PublicFormat(Enum):
++class PublicFormat(utils.Enum):
+     SubjectPublicKeyInfo = "X.509 subjectPublicKeyInfo with PKCS#1"
+     PKCS1 = "Raw PKCS#1"
+     OpenSSH = "OpenSSH"
+@@ -34,7 +35,7 @@ class PublicFormat(Enum):
+     UncompressedPoint = "X9.62 Uncompressed Point"
+ 
+ 
+-class ParameterFormat(Enum):
++class ParameterFormat(utils.Enum):
+     PKCS3 = "PKCS3"
+ 
+ 
+diff --git a/src/cryptography/hazmat/primitives/kdf/kbkdf.py b/src/cryptography/hazmat/primitives/kdf/kbkdf.py
+index ac36474f..75fe7d51 100644
+--- a/src/cryptography/hazmat/primitives/kdf/kbkdf.py
++++ b/src/cryptography/hazmat/primitives/kdf/kbkdf.py
+@@ -4,7 +4,6 @@
+ 
+ 
+ import typing
+-from enum import Enum
+ 
+ from cryptography import utils
+ from cryptography.exceptions import (
+@@ -19,11 +18,11 @@ from cryptography.hazmat.primitives import constant_time, hashes, hmac
+ from cryptography.hazmat.primitives.kdf import KeyDerivationFunction
+ 
+ 
+-class Mode(Enum):
++class Mode(utils.Enum):
+     CounterMode = "ctr"
+ 
+ 
+-class CounterLocation(Enum):
++class CounterLocation(utils.Enum):
+     BeforeFixed = "before_fixed"
+     AfterFixed = "after_fixed"
+ 
+diff --git a/src/cryptography/hazmat/primitives/serialization/pkcs7.py b/src/cryptography/hazmat/primitives/serialization/pkcs7.py
+index bcd9e330..57aac7e3 100644
+--- a/src/cryptography/hazmat/primitives/serialization/pkcs7.py
++++ b/src/cryptography/hazmat/primitives/serialization/pkcs7.py
+@@ -3,8 +3,8 @@
+ # for complete details.
+ 
+ import typing
+-from enum import Enum
+ 
++from cryptography import utils
+ from cryptography import x509
+ from cryptography.hazmat.backends import _get_backend
+ from cryptography.hazmat.primitives import hashes, serialization
+@@ -35,7 +35,7 @@ _ALLOWED_PRIVATE_KEY_TYPES = typing.Union[
+ ]
+ 
+ 
+-class PKCS7Options(Enum):
++class PKCS7Options(utils.Enum):
+     Text = "Add text/plain MIME type"
+     Binary = "Don't translate input data into canonical MIME format"
+     DetachedSignature = "Don't embed data in the PKCS7 structure"
+diff --git a/src/cryptography/utils.py b/src/cryptography/utils.py
+index ef0fc443..9e571cfd 100644
+--- a/src/cryptography/utils.py
++++ b/src/cryptography/utils.py
+@@ -4,6 +4,7 @@
+ 
+ 
+ import abc
++import enum
+ import inspect
+ import sys
+ import typing
+@@ -162,3 +163,13 @@ int_from_bytes = deprecated(
+     "int_from_bytes is deprecated, use int.from_bytes instead",
+     DeprecatedIn34,
+ )
++
++
++# Python 3.10 changed representation of enums. We use well-defined object
++# representation and string representation from Python 3.9.
++class Enum(enum.Enum):
++    def __repr__(self):
++        return f"<{self.__class__.__name__}.{self._name_}: {self._value_!r}>"
++
++    def __str__(self):
++        return f"{self.__class__.__name__}.{self._name_}"
+diff --git a/src/cryptography/x509/base.py b/src/cryptography/x509/base.py
+index 5505fa3b..e3846c33 100644
+--- a/src/cryptography/x509/base.py
++++ b/src/cryptography/x509/base.py
+@@ -7,9 +7,9 @@ import abc
+ import datetime
+ import os
+ import typing
+-from enum import Enum
+ 
+ from cryptography.hazmat._types import _PRIVATE_KEY_TYPES, _PUBLIC_KEY_TYPES
++from cryptography import utils
+ from cryptography.hazmat.backends import _get_backend
+ from cryptography.hazmat.primitives import hashes, serialization
+ from cryptography.hazmat.primitives.asymmetric import (
+@@ -66,7 +66,7 @@ def _convert_to_naive_utc_time(time: datetime.datetime) -> datetime.datetime:
+         return time
+ 
+ 
+-class Version(Enum):
++class Version(utils.Enum):
+     v1 = 0
+     v3 = 2
+ 
+diff --git a/src/cryptography/x509/certificate_transparency.py b/src/cryptography/x509/certificate_transparency.py
+index d51bee92..d80f051a 100644
+--- a/src/cryptography/x509/certificate_transparency.py
++++ b/src/cryptography/x509/certificate_transparency.py
+@@ -5,15 +5,16 @@
+ 
+ import abc
+ import datetime
+-from enum import Enum
+ 
++from cryptography import utils
+ 
+-class LogEntryType(Enum):
++
++class LogEntryType(utils.Enum):
+     X509_CERTIFICATE = 0
+     PRE_CERTIFICATE = 1
+ 
+ 
+-class Version(Enum):
++class Version(utils.Enum):
+     v1 = 0
+ 
+ 
+diff --git a/src/cryptography/x509/extensions.py b/src/cryptography/x509/extensions.py
+index 6cae016a..742f1fa2 100644
+--- a/src/cryptography/x509/extensions.py
++++ b/src/cryptography/x509/extensions.py
+@@ -8,7 +8,6 @@ import datetime
+ import hashlib
+ import ipaddress
+ import typing
+-from enum import Enum
+ 
+ from cryptography import utils
+ from cryptography.hazmat._der import (
+@@ -634,7 +633,7 @@ class DistributionPoint(object):
+     crl_issuer = utils.read_only_property("_crl_issuer")
+ 
+ 
+-class ReasonFlags(Enum):
++class ReasonFlags(utils.Enum):
+     unspecified = "unspecified"
+     key_compromise = "keyCompromise"
+     ca_compromise = "cACompromise"
+@@ -978,7 +977,7 @@ class TLSFeature(ExtensionType):
+         return hash(tuple(self._features))
+ 
+ 
+-class TLSFeatureType(Enum):
++class TLSFeatureType(utils.Enum):
+     # status_request is defined in RFC 6066 and is used for what is commonly
+     # called OCSP Must-Staple when present in the TLS Feature extension in an
+     # X.509 certificate.
+diff --git a/src/cryptography/x509/name.py b/src/cryptography/x509/name.py
+index a579aa21..9069a9f4 100644
+--- a/src/cryptography/x509/name.py
++++ b/src/cryptography/x509/name.py
+@@ -3,14 +3,13 @@
+ # for complete details.
+ 
+ import typing
+-from enum import Enum
+ 
+ from cryptography import utils
+ from cryptography.hazmat.backends import _get_backend
+ from cryptography.x509.oid import NameOID, ObjectIdentifier
+ 
+ 
+-class _ASN1Type(Enum):
++class _ASN1Type(utils.Enum):
+     UTF8String = 12
+     NumericString = 18
+     PrintableString = 19
+diff --git a/src/cryptography/x509/ocsp.py b/src/cryptography/x509/ocsp.py
+index 1c5de73e..bcf210c1 100644
+--- a/src/cryptography/x509/ocsp.py
++++ b/src/cryptography/x509/ocsp.py
+@@ -6,8 +6,8 @@
+ import abc
+ import datetime
+ import typing
+-from enum import Enum
+ 
++from cryptography import utils
+ from cryptography import x509
+ from cryptography.hazmat.primitives import hashes, serialization
+ from cryptography.x509.base import (
+@@ -27,12 +27,12 @@ _OIDS_TO_HASH = {
+ }
+ 
+ 
+-class OCSPResponderEncoding(Enum):
++class OCSPResponderEncoding(utils.Enum):
+     HASH = "By Hash"
+     NAME = "By Name"
+ 
+ 
+-class OCSPResponseStatus(Enum):
++class OCSPResponseStatus(utils.Enum):
+     SUCCESSFUL = 0
+     MALFORMED_REQUEST = 1
+     INTERNAL_ERROR = 2
+@@ -58,7 +58,7 @@ def _verify_algorithm(algorithm):
+         )
+ 
+ 
+-class OCSPCertStatus(Enum):
++class OCSPCertStatus(utils.Enum):
+     GOOD = 0
+     REVOKED = 1
+     UNKNOWN = 2
+diff --git a/tests/test_cryptography_utils.py b/tests/test_cryptography_utils.py
+index 6b795e0c..803997ac 100644
+--- a/tests/test_cryptography_utils.py
++++ b/tests/test_cryptography_utils.py
+@@ -2,6 +2,7 @@
+ # 2.0, and the BSD License. See the LICENSE file in the root of this repository
+ # for complete details.
+ 
++import enum
+ import typing
+ 
+ import pytest
+@@ -51,3 +52,13 @@ class TestCachedProperty(object):
+         assert len(accesses) == 1
+         assert t.t == 14
+         assert len(accesses) == 1
++
++
++def test_enum():
++    class TestEnum(utils.Enum):
++        value = "something"
++
++    assert issubclass(TestEnum, enum.Enum)
++    assert isinstance(TestEnum.value, enum.Enum)
++    assert repr(TestEnum.value) == "<TestEnum.value: 'something'>"
++    assert str(TestEnum.value) == "TestEnum.value"


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-python/cryptography/, dev-python/cryptography/files/
@ 2022-07-29 14:37 Michał Górny
  0 siblings, 0 replies; 7+ messages in thread
From: Michał Górny @ 2022-07-29 14:37 UTC (permalink / raw
  To: gentoo-commits

commit:     ab116ee6850379cf49bcbd95a1f8e68e55dbd715
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 29 14:15:11 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Fri Jul 29 14:37:41 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ab116ee6

dev-python/cryptography: Remove old

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/cryptography/Manifest                   |   2 -
 .../cryptography/cryptography-3.4.7-r3.ebuild      |  81 ------
 .../files/cryptography-3.4.7-py310.patch           | 301 ---------------------
 3 files changed, 384 deletions(-)

diff --git a/dev-python/cryptography/Manifest b/dev-python/cryptography/Manifest
index 923504bc7b19..aac15e3401d5 100644
--- a/dev-python/cryptography/Manifest
+++ b/dev-python/cryptography/Manifest
@@ -7,9 +7,7 @@ DIST base64-0.13.0.crate 62070 BLAKE2B b957f65cdb1e28baeca0cefc92fa98be797409b7d
 DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
 DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
 DIST chrono-0.4.19.crate 155663 BLAKE2B c92c273fb6475bbb2546dfb75eaa23321bc8f9a5fa8a7c652f527649b96ff8718fa932f52b500b02a4acae7837df5bdb14f69cb821d4962be2790dbd1d023a54 SHA512 a119349bfc2243a249f1d18b1ae548a04b30fecb75913a56f26d1ff8c0eb53097a2674d9141e2094018191cbbc1620843fbddaf52999824e077c1157f0907980
-DIST cryptography-3.4.7.tar.gz 546893 BLAKE2B 49bc1e098ed1ba0181059b645f6668cda6332d196eaca55270ebce6e07e5bb6ab6724c5050fde20e89b7025773960d74ec782bb875badbbd5dc9a04db0a536f1 SHA512 3c4cf64bc0b067ccdbb71efe04c32ac9d673faea6cc4ccd13d6b1b61920be4785806d19359b7657d032a2ff1c011a8b4f16ec4924d9df8a59d1a875a7f844473
 DIST cryptography-37.0.4.tar.gz 585913 BLAKE2B 3ed76d5cec1dd75ab89e9cae1357eda82b23017406cd84d97ab70d6b598cb3c453e34ea013d35b5a482f032b8513c0245d4273c2201313f42be54e404fa2b598 SHA512 9d39a2ec4facffd6d1c1db9267248846071aca8ac3bccba3da2d1a0664c6ce2a38c5245a9b8f62845a83abe6ba2782c43333aa4260960f37dc2eac3789a73575
-DIST cryptography_vectors-3.4.7.tar.gz 35168102 BLAKE2B fbefd3ff96548dde012fd290aba1c99d57db376023d486910e486cc9c143461ef1ae9b77824cc03307723d35142f0360bc961b548a4edc02357d3f1a0e7e4e9f SHA512 269b50fa4c5300da6758006d12be42f998630d23053ef9af0eb588fc9e6994b044d8822cff105e338f4d0d746ed0e204a4a9c42f54667e355e1ce86e6754bbe9
 DIST cryptography_vectors-37.0.4.tar.gz 35242881 BLAKE2B 3b58f12deec978e0d104ee84d2330248fd00291b63ca181a1e4803253e643496ee3cee14ecf84681db60da028543ca50d05968cac4d2c0609ae820b3a02463dd SHA512 33098be46d072bf35f72320d64fd244a8ef890e99ae7baa21f9fbbb8d423d60f2711c3c1293830c860ff9bdd79bff910ce4df0f4dc9f363d712b722dab2de7ab
 DIST indoc-0.3.6.crate 9663 BLAKE2B ca7a1f4d3cbedbee0ba0a3f19c4b3352ff90927eef744b7e4f1d60855d4dc4265202972e81e0fc06d1222d8d5fb322efc4ef669af7396b251248a1e45c91def2 SHA512 e900aa3b001df0fdbf1f543d8b679af317e85a1f95e26fc556213f2826a4f6c82d8c4f3f82de435e3591f8bc14e78eb22668d901dcbe2287f46740e0291afacd
 DIST indoc-impl-0.3.6.crate 7933 BLAKE2B 93e232e360e8f02943ef9a9cabf16bc863d792d8096b8d9a13a07f0b7b396db590abf83b5444f082317059dad7578ffae974dbc8a7e56fbdbab817b7d2534725 SHA512 18406587ee56a09dd2062cee456af697efa903343de42c0ff618a64ddf2bf7efed5da02e7220fed2636c555a6ae18059018f5c3c9b44ba8d3e5a34ea5b53c806

diff --git a/dev-python/cryptography/cryptography-3.4.7-r3.ebuild b/dev-python/cryptography/cryptography-3.4.7-r3.ebuild
deleted file mode 100644
index a9867806b571..000000000000
--- a/dev-python/cryptography/cryptography-3.4.7-r3.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{8..11} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-
-inherit distutils-r1 multiprocessing
-
-VEC_P=cryptography_vectors-${PV}
-DESCRIPTION="Library providing cryptographic recipes and primitives"
-HOMEPAGE="
-	https://github.com/pyca/cryptography/
-	https://pypi.org/project/cryptography/
-"
-SRC_URI="
-	mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
-	test? ( mirror://pypi/c/cryptography_vectors/${VEC_P}.tar.gz )
-"
-
-LICENSE="|| ( Apache-2.0 BSD )"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~s390 sparc x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-RDEPEND="
-	$(python_gen_cond_dep '
-		>=dev-python/cffi-1.8:=[${PYTHON_USEDEP}]
-	' 'python*')
-"
-BDEPEND="
-	test? (
-		>=dev-python/hypothesis-1.11.4[${PYTHON_USEDEP}]
-		dev-python/iso8601[${PYTHON_USEDEP}]
-		dev-python/pretend[${PYTHON_USEDEP}]
-		dev-python/pyasn1-modules[${PYTHON_USEDEP}]
-		dev-python/pytz[${PYTHON_USEDEP}]
-		dev-python/pytest-subtests[${PYTHON_USEDEP}]
-		dev-python/pytest-xdist[${PYTHON_USEDEP}]
-	)
-"
-
-distutils_enable_tests pytest
-
-DEPEND="
-	>=dev-libs/openssl-1.0.2o-r6:0=
-"
-RDEPEND+=${DEPEND}
-
-PATCHES=(
-	"${FILESDIR}/${P}-py310.patch"
-)
-
-src_prepare() {
-	default
-
-	# avoid automagic dependency on dev-libs/openssl[sslv3]
-	# https://bugs.gentoo.org/789450
-	export CPPFLAGS="${CPPFLAGS} -DOPENSSL_NO_SSL3_METHOD=1"
-
-	# work around availability macros not supported in GCC (yet)
-	if [[ ${CHOST} == *-darwin* ]] ; then
-		local darwinok=0
-		[[ ${CHOST##*-darwin} -ge 16 ]] && darwinok=1
-		sed -e 's/__builtin_available(macOS 10\.12, \*)/'"${darwinok}"'/' \
-			-i src/_cffi_src/openssl/src/osrandom_engine.c || die
-	fi
-
-	# this version does not really use Rust, it just creates a dummy
-	# extension to break stuff
-	export CRYPTOGRAPHY_DONT_BUILD_RUST=1
-	sed -e 's:from setuptools_rust import RustExtension:pass:' \
-		-e '/setup_requires/d' \
-		-i setup.py || die
-}
-
-python_test() {
-	local -x PYTHONPATH=${PYTHONPATH}:${WORKDIR}/${VEC_P}
-	epytest -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
-}

diff --git a/dev-python/cryptography/files/cryptography-3.4.7-py310.patch b/dev-python/cryptography/files/cryptography-3.4.7-py310.patch
deleted file mode 100644
index d961af82b774..000000000000
--- a/dev-python/cryptography/files/cryptography-3.4.7-py310.patch
+++ /dev/null
@@ -1,301 +0,0 @@
-diff --git a/src/cryptography/exceptions.py b/src/cryptography/exceptions.py
-index f5860590..3bd98d82 100644
---- a/src/cryptography/exceptions.py
-+++ b/src/cryptography/exceptions.py
-@@ -3,10 +3,10 @@
- # for complete details.
- 
- 
--from enum import Enum
-+from cryptography import utils
- 
- 
--class _Reasons(Enum):
-+class _Reasons(utils.Enum):
-     BACKEND_MISSING_INTERFACE = 0
-     UNSUPPORTED_HASH = 1
-     UNSUPPORTED_CIPHER = 2
-diff --git a/src/cryptography/hazmat/primitives/_serialization.py b/src/cryptography/hazmat/primitives/_serialization.py
-index 96a5ed9b..160a6b89 100644
---- a/src/cryptography/hazmat/primitives/_serialization.py
-+++ b/src/cryptography/hazmat/primitives/_serialization.py
-@@ -3,13 +3,14 @@
- # for complete details.
- 
- import abc
--from enum import Enum
-+
-+from cryptography import utils
- 
- # This exists to break an import cycle. These classes are normally accessible
- # from the serialization module.
- 
- 
--class Encoding(Enum):
-+class Encoding(utils.Enum):
-     PEM = "PEM"
-     DER = "DER"
-     OpenSSH = "OpenSSH"
-@@ -18,14 +19,14 @@ class Encoding(Enum):
-     SMIME = "S/MIME"
- 
- 
--class PrivateFormat(Enum):
-+class PrivateFormat(utils.Enum):
-     PKCS8 = "PKCS8"
-     TraditionalOpenSSL = "TraditionalOpenSSL"
-     Raw = "Raw"
-     OpenSSH = "OpenSSH"
- 
- 
--class PublicFormat(Enum):
-+class PublicFormat(utils.Enum):
-     SubjectPublicKeyInfo = "X.509 subjectPublicKeyInfo with PKCS#1"
-     PKCS1 = "Raw PKCS#1"
-     OpenSSH = "OpenSSH"
-@@ -34,7 +35,7 @@ class PublicFormat(Enum):
-     UncompressedPoint = "X9.62 Uncompressed Point"
- 
- 
--class ParameterFormat(Enum):
-+class ParameterFormat(utils.Enum):
-     PKCS3 = "PKCS3"
- 
- 
-diff --git a/src/cryptography/hazmat/primitives/kdf/kbkdf.py b/src/cryptography/hazmat/primitives/kdf/kbkdf.py
-index ac36474f..75fe7d51 100644
---- a/src/cryptography/hazmat/primitives/kdf/kbkdf.py
-+++ b/src/cryptography/hazmat/primitives/kdf/kbkdf.py
-@@ -4,7 +4,6 @@
- 
- 
- import typing
--from enum import Enum
- 
- from cryptography import utils
- from cryptography.exceptions import (
-@@ -19,11 +18,11 @@ from cryptography.hazmat.primitives import constant_time, hashes, hmac
- from cryptography.hazmat.primitives.kdf import KeyDerivationFunction
- 
- 
--class Mode(Enum):
-+class Mode(utils.Enum):
-     CounterMode = "ctr"
- 
- 
--class CounterLocation(Enum):
-+class CounterLocation(utils.Enum):
-     BeforeFixed = "before_fixed"
-     AfterFixed = "after_fixed"
- 
-diff --git a/src/cryptography/hazmat/primitives/serialization/pkcs7.py b/src/cryptography/hazmat/primitives/serialization/pkcs7.py
-index bcd9e330..57aac7e3 100644
---- a/src/cryptography/hazmat/primitives/serialization/pkcs7.py
-+++ b/src/cryptography/hazmat/primitives/serialization/pkcs7.py
-@@ -3,8 +3,8 @@
- # for complete details.
- 
- import typing
--from enum import Enum
- 
-+from cryptography import utils
- from cryptography import x509
- from cryptography.hazmat.backends import _get_backend
- from cryptography.hazmat.primitives import hashes, serialization
-@@ -35,7 +35,7 @@ _ALLOWED_PRIVATE_KEY_TYPES = typing.Union[
- ]
- 
- 
--class PKCS7Options(Enum):
-+class PKCS7Options(utils.Enum):
-     Text = "Add text/plain MIME type"
-     Binary = "Don't translate input data into canonical MIME format"
-     DetachedSignature = "Don't embed data in the PKCS7 structure"
-diff --git a/src/cryptography/utils.py b/src/cryptography/utils.py
-index ef0fc443..9e571cfd 100644
---- a/src/cryptography/utils.py
-+++ b/src/cryptography/utils.py
-@@ -4,6 +4,7 @@
- 
- 
- import abc
-+import enum
- import inspect
- import sys
- import typing
-@@ -162,3 +163,13 @@ int_from_bytes = deprecated(
-     "int_from_bytes is deprecated, use int.from_bytes instead",
-     DeprecatedIn34,
- )
-+
-+
-+# Python 3.10 changed representation of enums. We use well-defined object
-+# representation and string representation from Python 3.9.
-+class Enum(enum.Enum):
-+    def __repr__(self):
-+        return f"<{self.__class__.__name__}.{self._name_}: {self._value_!r}>"
-+
-+    def __str__(self):
-+        return f"{self.__class__.__name__}.{self._name_}"
-diff --git a/src/cryptography/x509/base.py b/src/cryptography/x509/base.py
-index 5505fa3b..e3846c33 100644
---- a/src/cryptography/x509/base.py
-+++ b/src/cryptography/x509/base.py
-@@ -7,9 +7,9 @@ import abc
- import datetime
- import os
- import typing
--from enum import Enum
- 
- from cryptography.hazmat._types import _PRIVATE_KEY_TYPES, _PUBLIC_KEY_TYPES
-+from cryptography import utils
- from cryptography.hazmat.backends import _get_backend
- from cryptography.hazmat.primitives import hashes, serialization
- from cryptography.hazmat.primitives.asymmetric import (
-@@ -66,7 +66,7 @@ def _convert_to_naive_utc_time(time: datetime.datetime) -> datetime.datetime:
-         return time
- 
- 
--class Version(Enum):
-+class Version(utils.Enum):
-     v1 = 0
-     v3 = 2
- 
-diff --git a/src/cryptography/x509/certificate_transparency.py b/src/cryptography/x509/certificate_transparency.py
-index d51bee92..d80f051a 100644
---- a/src/cryptography/x509/certificate_transparency.py
-+++ b/src/cryptography/x509/certificate_transparency.py
-@@ -5,15 +5,16 @@
- 
- import abc
- import datetime
--from enum import Enum
- 
-+from cryptography import utils
- 
--class LogEntryType(Enum):
-+
-+class LogEntryType(utils.Enum):
-     X509_CERTIFICATE = 0
-     PRE_CERTIFICATE = 1
- 
- 
--class Version(Enum):
-+class Version(utils.Enum):
-     v1 = 0
- 
- 
-diff --git a/src/cryptography/x509/extensions.py b/src/cryptography/x509/extensions.py
-index 6cae016a..742f1fa2 100644
---- a/src/cryptography/x509/extensions.py
-+++ b/src/cryptography/x509/extensions.py
-@@ -8,7 +8,6 @@ import datetime
- import hashlib
- import ipaddress
- import typing
--from enum import Enum
- 
- from cryptography import utils
- from cryptography.hazmat._der import (
-@@ -634,7 +633,7 @@ class DistributionPoint(object):
-     crl_issuer = utils.read_only_property("_crl_issuer")
- 
- 
--class ReasonFlags(Enum):
-+class ReasonFlags(utils.Enum):
-     unspecified = "unspecified"
-     key_compromise = "keyCompromise"
-     ca_compromise = "cACompromise"
-@@ -978,7 +977,7 @@ class TLSFeature(ExtensionType):
-         return hash(tuple(self._features))
- 
- 
--class TLSFeatureType(Enum):
-+class TLSFeatureType(utils.Enum):
-     # status_request is defined in RFC 6066 and is used for what is commonly
-     # called OCSP Must-Staple when present in the TLS Feature extension in an
-     # X.509 certificate.
-diff --git a/src/cryptography/x509/name.py b/src/cryptography/x509/name.py
-index a579aa21..9069a9f4 100644
---- a/src/cryptography/x509/name.py
-+++ b/src/cryptography/x509/name.py
-@@ -3,14 +3,13 @@
- # for complete details.
- 
- import typing
--from enum import Enum
- 
- from cryptography import utils
- from cryptography.hazmat.backends import _get_backend
- from cryptography.x509.oid import NameOID, ObjectIdentifier
- 
- 
--class _ASN1Type(Enum):
-+class _ASN1Type(utils.Enum):
-     UTF8String = 12
-     NumericString = 18
-     PrintableString = 19
-diff --git a/src/cryptography/x509/ocsp.py b/src/cryptography/x509/ocsp.py
-index 1c5de73e..bcf210c1 100644
---- a/src/cryptography/x509/ocsp.py
-+++ b/src/cryptography/x509/ocsp.py
-@@ -6,8 +6,8 @@
- import abc
- import datetime
- import typing
--from enum import Enum
- 
-+from cryptography import utils
- from cryptography import x509
- from cryptography.hazmat.primitives import hashes, serialization
- from cryptography.x509.base import (
-@@ -27,12 +27,12 @@ _OIDS_TO_HASH = {
- }
- 
- 
--class OCSPResponderEncoding(Enum):
-+class OCSPResponderEncoding(utils.Enum):
-     HASH = "By Hash"
-     NAME = "By Name"
- 
- 
--class OCSPResponseStatus(Enum):
-+class OCSPResponseStatus(utils.Enum):
-     SUCCESSFUL = 0
-     MALFORMED_REQUEST = 1
-     INTERNAL_ERROR = 2
-@@ -58,7 +58,7 @@ def _verify_algorithm(algorithm):
-         )
- 
- 
--class OCSPCertStatus(Enum):
-+class OCSPCertStatus(utils.Enum):
-     GOOD = 0
-     REVOKED = 1
-     UNKNOWN = 2
-diff --git a/tests/test_cryptography_utils.py b/tests/test_cryptography_utils.py
-index 6b795e0c..803997ac 100644
---- a/tests/test_cryptography_utils.py
-+++ b/tests/test_cryptography_utils.py
-@@ -2,6 +2,7 @@
- # 2.0, and the BSD License. See the LICENSE file in the root of this repository
- # for complete details.
- 
-+import enum
- import typing
- 
- import pytest
-@@ -51,3 +52,13 @@ class TestCachedProperty(object):
-         assert len(accesses) == 1
-         assert t.t == 14
-         assert len(accesses) == 1
-+
-+
-+def test_enum():
-+    class TestEnum(utils.Enum):
-+        value = "something"
-+
-+    assert issubclass(TestEnum, enum.Enum)
-+    assert isinstance(TestEnum.value, enum.Enum)
-+    assert repr(TestEnum.value) == "<TestEnum.value: 'something'>"
-+    assert str(TestEnum.value) == "TestEnum.value"


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-python/cryptography/, dev-python/cryptography/files/
@ 2024-05-25 15:07 Michał Górny
  0 siblings, 0 replies; 7+ messages in thread
From: Michał Górny @ 2024-05-25 15:07 UTC (permalink / raw
  To: gentoo-commits

commit:     b20e6746cce1f85506d047fb163f9466e7e90a19
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat May 25 15:06:21 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat May 25 15:07:47 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b20e6746

dev-python/cryptography: Backport 32-bit platform test fix

Closes: https://bugs.gentoo.org/926700
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/cryptography/cryptography-42.0.7.ebuild |  5 ++
 .../files/cryptography-42.0.7-32bit.patch          | 64 ++++++++++++++++++++++
 2 files changed, 69 insertions(+)

diff --git a/dev-python/cryptography/cryptography-42.0.7.ebuild b/dev-python/cryptography/cryptography-42.0.7.ebuild
index d8e7523e9456..0ddcbef8d04b 100644
--- a/dev-python/cryptography/cryptography-42.0.7.ebuild
+++ b/dev-python/cryptography/cryptography-42.0.7.ebuild
@@ -119,6 +119,11 @@ src_unpack() {
 }
 
 src_prepare() {
+	local PATCHES=(
+		# https://github.com/pyca/cryptography/pull/10366
+		"${FILESDIR}/${P}-32bit.patch"
+	)
+
 	default
 
 	sed -i -e 's:--benchmark-disable::' pyproject.toml || die

diff --git a/dev-python/cryptography/files/cryptography-42.0.7-32bit.patch b/dev-python/cryptography/files/cryptography-42.0.7-32bit.patch
new file mode 100644
index 000000000000..9bd9d5f19110
--- /dev/null
+++ b/dev-python/cryptography/files/cryptography-42.0.7-32bit.patch
@@ -0,0 +1,64 @@
+diff --git a/tests/hazmat/primitives/test_aead.py b/tests/hazmat/primitives/test_aead.py
+index a1f99ab81..2f0d52d82 100644
+--- a/tests/hazmat/primitives/test_aead.py
++++ b/tests/hazmat/primitives/test_aead.py
+@@ -56,7 +56,8 @@ def test_chacha20poly1305_unsupported_on_older_openssl(backend):
+ )
+ class TestChaCha20Poly1305:
+     @pytest.mark.skipif(
+-        sys.platform not in {"linux", "darwin"}, reason="mmap required"
++        sys.platform not in {"linux", "darwin"} or sys.maxsize < 2**31,
++        reason="mmap and 64-bit platform required",
+     )
+     def test_data_too_large(self):
+         key = ChaCha20Poly1305.generate_key()
+@@ -197,7 +198,8 @@ class TestChaCha20Poly1305:
+ )
+ class TestAESCCM:
+     @pytest.mark.skipif(
+-        sys.platform not in {"linux", "darwin"}, reason="mmap required"
++        sys.platform not in {"linux", "darwin"} or sys.maxsize < 2**31,
++        reason="mmap and 64-bit platform required",
+     )
+     def test_data_too_large(self):
+         key = AESCCM.generate_key(128)
+@@ -378,7 +380,8 @@ def _load_gcm_vectors():
+ 
+ class TestAESGCM:
+     @pytest.mark.skipif(
+-        sys.platform not in {"linux", "darwin"}, reason="mmap required"
++        sys.platform not in {"linux", "darwin"} or sys.maxsize < 2**31,
++        reason="mmap and 64-bit platform required",
+     )
+     def test_data_too_large(self):
+         key = AESGCM.generate_key(128)
+@@ -525,7 +528,8 @@ def test_aesocb3_unsupported_on_older_openssl(backend):
+ )
+ class TestAESOCB3:
+     @pytest.mark.skipif(
+-        sys.platform not in {"linux", "darwin"}, reason="mmap required"
++        sys.platform not in {"linux", "darwin"} or sys.maxsize < 2**31,
++        reason="mmap and 64-bit platform required",
+     )
+     def test_data_too_large(self):
+         key = AESOCB3.generate_key(128)
+@@ -700,7 +704,8 @@ class TestAESOCB3:
+ )
+ class TestAESSIV:
+     @pytest.mark.skipif(
+-        sys.platform not in {"linux", "darwin"}, reason="mmap required"
++        sys.platform not in {"linux", "darwin"} or sys.maxsize < 2**31,
++        reason="mmap and 64-bit platform required",
+     )
+     def test_data_too_large(self):
+         key = AESSIV.generate_key(256)
+@@ -844,7 +849,8 @@ class TestAESSIV:
+ )
+ class TestAESGCMSIV:
+     @pytest.mark.skipif(
+-        sys.platform not in {"linux", "darwin"}, reason="mmap required"
++        sys.platform not in {"linux", "darwin"} or sys.maxsize < 2**31,
++        reason="mmap and 64-bit platform required",
+     )
+     def test_data_too_large(self):
+         key = AESGCMSIV.generate_key(256)


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-python/cryptography/, dev-python/cryptography/files/
@ 2024-07-21 18:28 Michał Górny
  0 siblings, 0 replies; 7+ messages in thread
From: Michał Górny @ 2024-07-21 18:28 UTC (permalink / raw
  To: gentoo-commits

commit:     a7726fe8262aaef9e228c86365d19276f298f780
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 21 17:56:45 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Jul 21 18:27:44 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a7726fe8

dev-python/cryptography: Bump to 43.0.0

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/cryptography/Manifest                   |  27 ++++
 dev-python/cryptography/cryptography-43.0.0.ebuild | 139 +++++++++++++++++++++
 .../cryptography-43.0.0-rust-openssl-crash.patch   |  79 ++++++++++++
 3 files changed, 245 insertions(+)

diff --git a/dev-python/cryptography/Manifest b/dev-python/cryptography/Manifest
index b81e4ec2d3db..d9047bf503e6 100644
--- a/dev-python/cryptography/Manifest
+++ b/dev-python/cryptography/Manifest
@@ -1,42 +1,69 @@
 DIST asn1-0.15.5.crate 34375 BLAKE2B c794bc89b21ed3543082873d065a22f72a1d3f422217bce2980b44ffab1584ecf7ee23808346794c1dd9eb1f413332b8a5fee5f2ba8d626f6200e6a0492b39ea SHA512 28ab871b4e011a91da38db4900b1fd907ef894b0eabc98d354f9288ae1564a3122b19748dcd49879a3e294d9e7dfe3b4b2b49ed0b0eeb723aac4567b2c0481bf
+DIST asn1-0.16.2.crate 36082 BLAKE2B 70214556c18ddc9e31f58a1b5c59b5ef5e74f3662ec515b739bca66ac6272ffce258d8a73eed913aed0bb871aabff7a0c95e88853551292ae8f1425e8087d751 SHA512 518481d1bb12d95c1340e374e7b1bf23f550712ee57bb166e7892118ac9b602006a461605f9ebf1b7d60dfb70266229b87833827c5fd018361c33bd9a89e5e7b
 DIST asn1_derive-0.15.5.crate 6095 BLAKE2B 0b8b14796253b7ef29e0baada2ffaf363e69686bd8fa5760ed7cbba5299fb2c4cc1944e66cf559b0e136b0e8c436d63f823f143bf8d200c36ce36e3e9e6fe87a SHA512 6649cda49844db520b49a31cad671743842f22188cd1104eee29d1e59db2474c821bad8b00bcfb5491ff7117aff6e6c11e05186c17b02e63088c1d09f623b5dc
+DIST asn1_derive-0.16.2.crate 6099 BLAKE2B 709e2c3c1b698e5f9101bc56434bb7abff8a857fded1bda3552d1dc138fe8e88af6afc1e1b604a3acd877858f21e27c80c96d274330db4514f7bf375be5bac3e SHA512 d59670896090d048f2d739aeaa897638d91f211534400d7f102672d40ae887a2a5f4cc4ac61381c17c2d1388a18991736f6fe7fe2b50838b88f25017656e43bc
 DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST autocfg-1.3.0.crate 16524 BLAKE2B 7d5a03853d6b4f0da08d8e139fb200da21e47fa7e50d1956270d0ff0cc496f660f8f800122c95eee9ba98d9210ab200c3010b782097483d12d6be4ac0df0e7c9 SHA512 a5570b955d57a7183ba148b335837dc5af24b202e80681027536d33fe2822509ba644fc70c29f018c893285ced2bf6774f44ca6c59f7c7e2226d5349cf7c3635
 DIST base64-0.21.7.crate 82576 BLAKE2B 25cc8761c14220981ff4ed332058f6179948080cbfa2b225ec1d1602e4af14cd470c969e8b7049117e6fc51a5a24e06b1d27bab844486ecb76409d12e0581d5d SHA512 c6986d88dd9aa081d914f35b4174be4ba874848657ac4b5e63b9b45af765d973289c548ccb5a01584edfc0d8d79ff5be25b51365295d6e7a311bd7f0ae3c0cb9
+DIST base64-0.22.1.crate 81597 BLAKE2B 6f216a560bd36e6e6b74e908344b457594cc768d9763070e269b56a14b150cbfc4b7f599d4c2a0a5f783638170ee132f0796fefb14fcac7fd73c58db0791007a SHA512 91cf2e4e7fc8815f9b8a86a7fa722a20eee3dc1dd57111b29e420de87ce7836bcdb1db01d3cafb9a977710ef63e7cc41b7772762323e68e0e832156858aace20
 DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
 DIST bitflags-2.4.2.crate 42602 BLAKE2B 768d4ca52aca73d8acf2f494a66957ed2603eefd5a04332ed0880d230c2cc6ef3bfdc0792fa6f288a0eb132913dbb256793e580bc34f4a40e8200e1fbafe97a9 SHA512 ef4c20e6e78a2ecee97e17189b7100a504d8176c7c15d7f17d62157a116d66f83f8b2bba472a4acf02cd3edbd94b20a7047af918c3f3b371e2e04f7474be0214
+DIST bitflags-2.6.0.crate 45357 BLAKE2B 3a368bd2eb58c095b7b4a46680cc2d90a28e24b2e37c854bbf8647c861c4b8fb37eca827599673c5c7df763048149dd82123d1ede1f8a0e58a6bc23c8250f7e6 SHA512 f9bb3c48931ed7e7e05ec6d13305af5da6b6c18861ff307d7dc17c658f63972c87b70b0527287b3625c8592befc207cfe15550654995faf3862bb12a6d95bacf
 DIST cc-1.0.83.crate 68343 BLAKE2B 33245b33fa845ea2f36da36e3830ec835f937e4319865b357ee9d5ea29a0f9f8392eadb38bf1d95e3c15ed201e561acaa87aedcef744f8db3dabff87a96c7f02 SHA512 742a248c3a7547bb220a0b9c97b67a831fab9b4ac21daa08c85a3966b9fe576088def33e16132fcabec9a2828a6fc437088bb045bfc98b2cea829df6742565a7
+DIST cc-1.1.6.crate 81585 BLAKE2B 412ef9d62c32a42164f8c2b827c10f0d41e75faa77e6d1dd8515ff5ec43abd1da75bbb400460a43a252c93dd0a597c2e44c8e899a376d963f0d3727db7ca2c24 SHA512 ea8bd8150042268092360e6396226ee5e83ba154eae99d299c897ed16e8543fcfe3179e22b50b0497bcf065a16933f4ebf7edcae7e6fc8be3788f0ae7f61c000
 DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
 DIST cryptography-42.0.8.tar.gz 671250 BLAKE2B 77de79a8f6e78cc375c604e5d7045130c00bb3d2ac5293f5b16dc81e5d58210711943d3e217baea84d7f5348121f15a8326e6228e161cae87f1f7ecd1bfbe321 SHA512 db56db956649c05dea9f405341164126147e94e09ecef3535b63e2fecdb3d64a008c23aedc868406eea0dc1ea8a8efbc2fb29b74b7f04cc50454039e2d2e647f
+DIST cryptography-43.0.0.tar.gz 686873 BLAKE2B 09e1f73ed47a3ab03b49e6a65eceb0ee506b4e1c50b44cd0f971243159b27ea5f725350fcf2c702945438545a89d96ec026441b6b6151a9022bd61b926ca26cd SHA512 0a93a217bf09afca32df5ed6792b8e9de210ca4143697b8b97aa2c41b8e8382ffdce1bae47bf51a6319f03d9ec70933218030ab21d642a0ef907cac3e816929c
 DIST cryptography_vectors-42.0.8.tar.gz 35277813 BLAKE2B 89c3ce911ee65a634c2bb647c57ba99c27f846dcbdf70889f5c589412b50218641ee83e7426ffaa001ed059fab4439c15e9abdb30062f7c0a82bca18c66e6247 SHA512 c81fb4a3773e84504e2f4f935cbf572ed056531671a66c65e55a6377ac8ae9006e0d7d0cc24141c32cbded74bccce487e21290afbe8548318951d4c4de00a84f
+DIST cryptography_vectors-43.0.0.tar.gz 35306242 BLAKE2B d1dceec0dbe02ad500c73bd94791c6b47320534268cc4fffdb799a632f37b27bd3de837a725c79f733f86eda813a1a512778615c62144275ca5e7aaaa3d65d08 SHA512 ca5221a390ebea4eda5d72f9ac9632849ce2174db51385405b1b41b702c0dcd2f24f7fbfaa027bb6eb8c63588ac1eae5fdc7978a08c1561dcaaaaa998b67eaef
 DIST foreign-types-0.3.2.crate 7504 BLAKE2B 520818b702d990d296ecd31a8646850202509ccfa18edd0e1b260289619a6c351e758f317ec0824bd76eccb209b6f087057c25f1bd01a47897715013dd834867 SHA512 bf27b8243ed482c202d120383374f19ff09422535e24b9c1aebccc66529bf300ca17b8bbc76d67f98ac092e614497afe3add9dc68aa69c93074df05762f91232
 DIST foreign-types-shared-0.1.1.crate 5672 BLAKE2B d2e42e04b6657e7a69fe0bd20c672176629c743e49a55fd007bb30e289710b70045d445ae9cae0eeaa747ee708c90e8abd9b5fc39bad8ec0666befe1b696d4f1 SHA512 bafdb2143e136fb0818e2ffd90b5c862b7181647d6568947d4e4531012bbf7a57b597221ec7056c1b562dfc0c3b5dead26d1a4111ebc15e7863737a873518a4a
 DIST heck-0.4.1.crate 11567 BLAKE2B 520aeea740cfa30b0cca12f73594ffa655f32959673b1c9caaca1ea0162e455546ae3033881394c0ba0516bcd5c9a997da02162e1585522d665813b9096eabd9 SHA512 8c80e959d2f10a2893f9a71994720f90747742bb5b61fc0a539eed3ea5679b140c48fd7f7690d7122cd6af5f7f20a19d412e3569fe741c6d31f6b2ce1e0b80e8
+DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76
 DIST indoc-2.0.4.crate 14311 BLAKE2B 8d604e20825ae64530014081c627abe4ecec6447e1e214408743aca79ed217531baad4bd7021137ae6628555d769a248f06acc556cc3254d2626074aab110a44 SHA512 ef1b8d19d89d848c1133f2865247e0ce23cbe5552454805910ed0478ac4acb11b11629aa4a5ce8756d0ed5cbc0644abedeac0246f433166c68f47cf58cf4487a
+DIST indoc-2.0.5.crate 14396 BLAKE2B fe838c6a855d6ff7396675a3fe9b2e0b06a93cfd4013b0b843d24d2fb81f6566528bfd1753c649646f06cb7e59262bd6ec3ed79d4e6f01d740cf0682355f2e5a SHA512 095fb56a3d87946c42a63065a8b276c2d4b9b835800014b400bb987593bf56701bad9f55d947f090740fdb7641a4f3c87fe8bfa5724709e95254d1e8e2e3616f
 DIST libc-0.2.152.crate 740278 BLAKE2B 8eecde477063207d77b6894d6f9194c8dd10e55b69585e3d66296eaa0b9d3f6e2d033e667207182bf4c3cf31f6d38820c9187b2006f4b5ebee898adafb4b2751 SHA512 1722f6f52077efab90026aae3d10306f8c38ebba95366593c3c1adf707fae121ab450064ad9e8be5a667caf6af0b90fad4d1ca1009db0f2220093c44e33c4b5c
+DIST libc-0.2.155.crate 743539 BLAKE2B 42cdcf8d4a187383548b1f09d404474f168916d626d614463fe10a1fd886e972e1caf6297e75445214af3f31fe631d0927e54ec1cdc63e20082b3587e38dce16 SHA512 05354bba532b8338bda1f88f12c7f3893429734a06e33925fca2b99d49548ae5216e2cd84e782d2368a2dfef20b0e035e2dcad8dd13ede7119462a8c639b2807
 DIST lock_api-0.4.11.crate 27487 BLAKE2B 87116cf908f7f1f9c300cedded989df305f855883e3df5a482de2c76814c48739582d3079d76a2bdd14a6999204b7fd31dcd8fd06d1dc7f9418f0e2f70a1450e SHA512 9946adf313a5c67a0dd87a1b679b7d9d16a86149fb95974d3f28aa57a9a1a3932e4a5ee1d332097559329c5e3b2295be2e4b655b115d9f75269f33a758b17fb3
 DIST memoffset-0.9.0.crate 9033 BLAKE2B 19090c1af8b8cf54a2cf7593748aff4d3dc685ec7080aa476139c1721ef71555495e1bc513b1efaddc7e7702f83e0e1c2a8f71ff40009d266539484c9297e0ed SHA512 2f04f9b6fed31e94388c18162ad275897a835df7b9ac827f4df0f4b0ecf71064ef247f7ad11dbc27d7a6d448984a0f29d1c000e3c8d5fa6e121fa9571770ec55
+DIST memoffset-0.9.1.crate 9032 BLAKE2B 0aab55fe084134bb599c52d77c96400db40949b1013e7037747ada4fcec8dc4a124b6f3755f04b36e057eb2fb4a6bd6f07d6eebcf166f8a71405ef434d802fbf SHA512 3a236c0f481e36973b9f805e454c2efe4dd375e6b4ee406b57145136c70d5fbf4e1183d563ebf3b5fbde7363bbf5f08f0d88e507aae5bda4cc75664ecd0e33aa
 DIST once_cell-1.19.0.crate 33046 BLAKE2B c14b374eaf4ac0f60acc2e02f7bba270a0e8e0a6978d749cd3cb0ab3eb26907e4fbea70dd5132982f90290381ed18ff8a87fd530f1415fabffac864f157ea380 SHA512 4154876afd34a699ee650d1a8a1c5ee5a25f0ebd9388b8bef2564e33629fae68f113d7507488c68abbe7ea1acf9bbc41813cbbf3ef3e464e3f3b9cc7a51d870c
 DIST openssl-0.10.64.crate 272306 BLAKE2B a8b618aa403cdb06a7f135cd966775f21c99739365c55aabde2680a6154d03c7d554bfae6c62a069841c70ed82ece6c3f0cd589da8c26022b7022c3c4d79a6d8 SHA512 a1fa9f71cfebbb37ed9d4a902360f2cc95a78f55b5da5d51eef69db38cef016fc03236485158d689ccf054e04937b8cddf88e3f0f31672997fb30c6cac73cbf6
+DIST openssl-0.10.66.crate 273705 BLAKE2B 7892e96dac3b24ad5622833b4061bd82028210f9f26ec9772cebb65905ff6e45da8b21ad1aabfb87bb5610f534018da6bd20c10eaee8c189dd08a7ebfbf12b4b SHA512 2f4dd6e40dd8aff8c04563517fabeecd5ac0d986764649cc9af9bf4ce25757a67f75655eee207703b46fe57661a216ff00144358ffcbc70525447a063fa086c1
 DIST openssl-macros-0.1.1.crate 5601 BLAKE2B 69dc1c1f3b7bc4f934cae0dce64c3efa501162e5279efd6af3b74f7a7716c04b6996b306b310f1c045cfa2eff2895314a47ecbb020a817e461c6d77d0bc11e92 SHA512 57e75c84f78fb83f884eeaedb0dd135ecb40192dad2facd908e6a575c9b65b38a2c93bca4630e09ea5a82c77d8bc8364cb2f5778cbfe9d8f484cafe3346b883c
 DIST openssl-sys-0.9.102.crate 68622 BLAKE2B 0d3d3c9ef8e2542c7f35db1d8feaf512cc7313481bfcc99354d601e8d6332adfc2e7ee8b35599a9241de35c163efd840186e904375bdc9c65ee743abbc154cba SHA512 7ecfaa0b49cea5c60f6f063fe5217252a65b27c5e6d1185e0aa1bb4b59c4cf9bf326840e8795a870a537c18ee5a987feedaaf2dd767cd6f1380f25468a1622bd
+DIST openssl-sys-0.9.103.crate 71552 BLAKE2B 4cc1ab93f5a444b4b985c84f6ae90f345da4639e4ff7c5502dc1ae59f842d46e3855057a7c05855f7cd739b5311f330dff361480ef2a0102fe46471506956148 SHA512 61b802f6baf918ec055be90ee47c69fe0184f6d9a1d29c748386192a11d4df115758961ec9b636126a6b42d7d8f7509248c59f7c035905558c4cc35b804a8eaf
 DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
 DIST parking_lot_core-0.9.9.crate 32445 BLAKE2B 811d8de671bf6e0911cf0df7dcaee4fb03a3b223173a3bb8cee65a28724eeb7bac87f62aa7b1df5ea3fc93af3cee3ef30b83d06c6773d6b856a7e6fa5fa197ea SHA512 7f0df70f9f1ca8d3da0b9dcc96e49daf05d95c3a995289266b5333f68818d686d32b0c733dfe3a0f62da78fa45caa843a963923b2d0c80899c33413dc749c032
 DIST pem-3.0.3.crate 13035 BLAKE2B a9a5b7f9860ad9ee7b355e54c7e885126790e5298715234cc8247ceef8b997311bd1f916d113358cdfb22cbaa3fdae2ed4e3ee139bb1eb969185dbf468148c86 SHA512 7bc100eb0494ef2a86fcc4ba67c328d0cd791718f0c4eb67e66ac998d13e5624dfb6a1919862f684052bf61c7169c5065bde23b30640fe56651cf377fa573b30
+DIST pem-3.0.4.crate 13040 BLAKE2B 33126cd0feeeeb8b57691c50f6535c43e853b9835308d69a5afb426c7a738d260a67d5c46f091ad73e934f0347d976c6f65f88b2f7b1058eca542296191bcb9a SHA512 be743157e11ed76e5a9a60f5e58f50277910ecbf12df492b114b4211f1f1d69555702d955337ec41d368566ae1697f550e3705a195105068c617b9392c43f56d
 DIST pkg-config-0.3.29.crate 20563 BLAKE2B ed0559b0073890911fb47742743b2586123bf9e9b594aa0d5b2c419c6768cd37e25b546c21077ea6cc02823a679b302aeaaca6c7fcaf9aeec615dd08f53a1f6f SHA512 bac7dafc0e10bef40e427c1fc0271d1a26acb2f5b1cf7cc7a128f4d4f1f3110529e45057b71cea7b0f6ddff26945fe08962285ddeb22b54639e44a2e43af698f
+DIST pkg-config-0.3.30.crate 20613 BLAKE2B e14dd544612f74b038bc7d279d629034237946c261e3e97621d6ac910a12f4fa4e75932dbd5d3339e62325d0ccf33002b07f04b0523f93d2bd3b1a919841ba66 SHA512 e4bce232e1e1cbb17d1c08c3de4dd12613f5a5238f831c2a765b6ede9b494e647d2416a7d9a0c926104e24066dd1b38df8df98a6c55d62f25060f80eb33d064d
 DIST portable-atomic-1.6.0.crate 140689 BLAKE2B c91d06e04a87c9a207233d8a850859aa1f5cc43dda8aed34511c3fe9641c27412796539ed045a58e649d2a0c7d71100b6b2d78a0c662fc061fd961a652ae8722 SHA512 b27cf57655a2f1e2d6ea7b45d80b4f9920a836e462f132c50dc1e4d314e162444309de1baecf45dad2defc7a5b99759165e54da9fe759b24092f8cb8755c515c
+DIST portable-atomic-1.7.0.crate 145385 BLAKE2B 7d9622d636677e3adae0f909405090318a9d6189fc18683ed21074e9360f213b44c5213f3561e3dd1f642547c2c2e6682b9e1efa63243c1f12636bb11bd15dbe SHA512 0849edaa7a1f9ea66182443e31691e7839c857240916521bbd6009b5e692b13f5b315df36e656134651386bc50d895ecf6155a906750009514cad8bfc7e57fe2
 DIST proc-macro2-1.0.78.crate 47158 BLAKE2B c56a24fce3faca9e04db7965cab552d2a976c3764df0a84179b5a89d1230ab355c777a82b4c982e3945414f1f0478473a88821dd176c32d6de394d73a26adb9a SHA512 11956fe03a2e77a925cdff2c3c8bc8804dffab4fa1de963a128fa23f4189976fd2e2102bd346b92c33524beae320b71dadaa5213695a3ec638404196e14fa769
+DIST proc-macro2-1.0.86.crate 48958 BLAKE2B 4b89e07f23af8328dbb34fe2b3f1b202f1e6a3885a6269740a23359b41bb4099ac2484565d3b2b0936261689ca525785ac620c766997234fd8d0f409e80e5ea3 SHA512 1cdb7e22a35ae231d880c9420784c9acf97bda2db258b3d34aae5061dc1858449defe19a49e12c6a4173906aa72a4115059ac2db0fc760205fd2ab8b5b414434
 DIST pyo3-0.20.3.crate 434673 BLAKE2B 1dcb881fd1fe5c76e9b4951f4d95fcd1daa1845c226a4ab1db4283cabe67bda822ff03e3cc85d797fe4665a1614229e7406dea65ec5e99ce4aac96b973a7f55d SHA512 77cce558fa60bbd8d9981ff5e62fdfa9bac94bd650b287fbf14ac93ef1c326c8ae7fda82d744e3582df03cab8adf490e0f2752fabd9ae3de044e7d80984e0350
+DIST pyo3-0.22.2.crate 538342 BLAKE2B faf347695117f9fe0ebe5cd7f6aa1b0dcfe718343875d6c06438046deccc1075f104d2a2413dcda41ae9827bc363aa147057b45968f6634f577a6a4510a4bb8e SHA512 e8bae09059f50ffe477dad44499cedeaf3a734665f0fd8e8bd4b44f48578d21e4bdb8d55ceea00c5a27da750761842ddf89cfcecdecb2e7a4a17ab192259be9c
 DIST pyo3-build-config-0.20.3.crate 30060 BLAKE2B ef122b0b7d840d5362928bac76e1299b333775ec5c49a3bf23a19eccec074917931356bbf719c6d700999941bb6a396948ee7f8761e685c8e9251af07ba0cadc SHA512 70685415bba443787dabb9c61ca3702aefbcacb0705471b496b4f01efe34291735321d91243355b4be9aed8b243e393c09fb65556f1b926ac7f22f64560bd927
+DIST pyo3-build-config-0.22.2.crate 31225 BLAKE2B c2e6a3d3d23b7f2f51bcbf1214ab20a298a1e62f85c9af3dab1e77b09f20b657b576feefffb18eb49d438f0ffab525b6bcd1086d500601c327ffd4fd24a719ee SHA512 644c82d30bb27051557efcc9789a81380a64e29bc62abf97de88f42c3791dac74228c7a7d09e0d46d14f07c0475f0bc03fac6ed1367b9a616153e8820b94cbc8
 DIST pyo3-ffi-0.20.3.crate 65024 BLAKE2B 33e79a02c7ab85f4767e02a39d8553ddc015c80d13bea674885ad8a18d89bd90f866cc39d81ecbf56270ebe87d29bca48f635c4e73ec99df02ce425f1427cb31 SHA512 3d1ced58e243be7cee4a3ca831dc08a1631fcd511c707dd3bada87d7662807dea2d88393d76e56ff19a6d1c2804d93b5b6b7b5efd36b9c275d66fa1bb1bfc384
+DIST pyo3-ffi-0.22.2.crate 67749 BLAKE2B 0a4357d5f4fbcab9717d58b7a80b63a63bc329267d4725136c4eac7c0101095a50e5f840638dde79034e5df99c4f46664cfdc2ad437837643db5d475c5705cb3 SHA512 bf8b83b4790832d99de8c6a61a15a43fc189505dd843011933305f7f93c4f5f4849fb00cc2a6fa410b788645f8ed8c0df61799cf801966a925abb9756b1ab579
 DIST pyo3-macros-0.20.3.crate 7920 BLAKE2B 0510accf51cd83390cbb7b6ba4ec9f4610e3dbb7448d1213994013487ae81bb087df1ba0076a3862e5ecfd172b7846f9439a2d86950a93b016aae565ced4f03b SHA512 454f3c0c054aa131ffe955e4be1af061005b9c81b4d80702827e19b983224c118dfea474da515d5fc2c79cfd3fa21204ed4af2d9e81427123e0a78bd246a23f8
+DIST pyo3-macros-0.22.2.crate 8136 BLAKE2B 9dc97d2f60581db1b8ddb562dac917069525f297fe2cbb9aff3ed34d5a08ea43c112c9c7a450539da3536d753778b5ca506dd1b18e1d6b8a3649fc098e7af439 SHA512 f4f4f6af8dc3aa4bcc1698661990ab2112391ef9502e9f71d86e35bd10dc4e1be309102ebb1b7b32751817a6033168dc0486fdb16b35c626101e69f0de807a4a
 DIST pyo3-macros-backend-0.20.3.crate 49797 BLAKE2B 59c55d482577ce105db3e19a1db794eaab8221d7de01197716b75d5d2602e0f27c86aaae527eae7098eafad311144550bd597efe8cd6560c82dc435021f3428f SHA512 e177ee0d6a538a555fbe9108e3e2c20102622b2c9b9696ae309189e5c4d068efad2132afd4a97d734ebabb4d7146980a26cb68dc05d5eb88f338be2ad0cd651f
+DIST pyo3-macros-backend-0.22.2.crate 65620 BLAKE2B 37fba9ff384373418d3a7341acafb8e33308a64e30026f828693a37c32ab4a74d058f2db84d00467a20f9f267c96fe54c0f154d1ebbae92490e8dfc0d29c042f SHA512 0517080c0d5d4ed8136521fd37aa3a192c2eb8cab58545d8543ee4df9cd0dcea19fe0678d5ab90f05fe3eb0f4a86fc2f07b76f2e12ac1fcf7e7c195c2ffa4fd8
 DIST quote-1.0.35.crate 28136 BLAKE2B 81424245e1e2b94459df68bb3a9a866c6a364102b5e1d010ede9c5f8278f8406d7b651957d091c5914e936b494b0f6e9a6a1dd8b7d35cd7d7100f86dee4ec12e SHA512 f5314fb6af17cf36c228e1970c569c29ec248954a450a5f90ba9e2896d04f74904c9cec5a1f74325f2489295a94491eee4ce8fb461e22cd4b34e53f1f881efd2
+DIST quote-1.0.36.crate 28507 BLAKE2B b93495163ed205e33543ed45f084870240d479071d643704b6e348fb9ada6e1d8401893c13348b9964f4b6b17ddb96cb5458eec540f0d761655fcb96a4cd9129 SHA512 f1f002a912692f7ffd4912ca980ec57ff4aca3a7d9e2e42e9e3409e2105c9f59d86c05719f6af309bccaef2f8843b0848a6e3afda3356e045d8e7cc5956ae685
 DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea74d574a08cee21d35713b278d8b5b30ca2a1d73a0981baeb4644cbb88c86c8eb15ab3bb2692e38b93e6b35fab4e0da SHA512 073ed9d96090cf46eab9877742277a013c62d8da86d9caf2310b4fa868af306511936553579e01309f27067d344226cc8dc5e3aef01d9b900da2febd33848f8d
 DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
 DIST self_cell-1.0.3.crate 15147 BLAKE2B 9b53b0568dc4ce0c7372565eef14e593aa25e262d7501da6e4b8cd7807f5385977f9bd3563ed39a6fd4e07c824847d0c09a2a750024a800229c7a57ce5e8e325 SHA512 89a990f8a59cdbb99930ebbf9bb6566b77f03f1f551e49b207c865e7205541fd9f0342d284aca5f3d054a24520fd438b6c53baf48c43fa28dfbe8d79fe8c7e00
+DIST self_cell-1.0.4.crate 15220 BLAKE2B 9a617058652ab2a2e92434b6eef58a813ce0be5afed9525c4d4c819c25c7cd87aaa12d129c8c4ca9d74c3ea33d81e9dd295f121887070364185b9ab33021544c SHA512 042467e5f3ac0305e2a634df0b9a9379e92b54813e05c3a7652d5327a4a9a784f49e897c968c5c7a87017284d42a889b5420ad18e97ea84183e0283a46dc907a
 DIST smallvec-1.13.1.crate 34952 BLAKE2B e0dcf1d26883564cd4f5d20a588562404e193075b1ae011f7f7542009a9466e5df3ade7768e1a8feb8806774b2cee5f15d31779928f83714e7d4b6ed46af9ab9 SHA512 1259ef947400470b8c9e74c5582dbc1a49753aa46420883c1f7d66f320f67bebe733a15a23cd57ba461020fad4ff337a5b298de82754602a78f5e6cec969652d
 DIST syn-2.0.48.crate 250566 BLAKE2B e46b0863af76c3116c84d01b654a9820b7edc51f75c9c5301a7967d12284f78da602409f34fc40524728350dc6b998a4d738f08b8868f95236b3e5d24c460580 SHA512 926c0ad55cc743df20f9166b6d71fd44421aeb1f073fd86b6ddb53e13cd508b539c0360ce64b07b65597bb14639c8f33acf7e60951e1e9128624517aa3aee325
+DIST syn-2.0.71.crate 266398 BLAKE2B 78760c9965b59e14ab5d97e83c4dabdba99cd1933b66350c7d5c5f9e55f34fe68207597b51aeb023b211a065d986889655ab701b94347397ca6856a4fcbcdc85 SHA512 cf6264bc148ec550d943d7d146c7360a7d753e37ef553e6d0c6dc265bf516084530a5617f6826069275cc6f71d9f820014f7d92f04356ae964df8b79edaf7bbe
 DIST target-lexicon-0.12.13.crate 25424 BLAKE2B 5fcac231c270a59b6589adb79c90cd3bb15ce024e3c5fa3fd267b3226e5514ce77387c57c86ca765b43ee593a55ec99fdc8fbfd464dc01afaa91ad10337b6278 SHA512 323331857bd3db9877a6c7304392e39d378439462ae4f6d6939c02d28914ecddec52696c94ceebfe8a0e7e93ce25c900099bb3922d7783643162e55c7a8769b7
+DIST target-lexicon-0.12.15.crate 26384 BLAKE2B d1ba50aa9d50647c6f778df86b35db1a4dee56fad918e6ef216688d9ac716dc5e8b40bff15aa89a99e4874e74d7e2731ad7fd9ea7094652def8abf57b74f9811 SHA512 32cf3e2da1c28003e1b6347abc8ae4d8182bf5b719ef84772271fc871dbaf96ec98c03b555a748cb8ab76584e67e17532757193d1d84b057cc90bed525727fb3
 DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
 DIST unindent-0.2.3.crate 7306 BLAKE2B a57407b117e99c230750c7d4a2a0899586c8271e4ba88ecb409c976905c014f42885372c234a75fbfbedf71dbed779f95f735975d150adacdcb61152a49db4c2 SHA512 2f1eb420ea3653b00d3e5fa0c2c105da8fd8a37cb3e699373c168604b799fccd5f0faf0cddce4212d119c2afb0c86b41efc3a50752b83ff7beda2bd84d360505
 DIST vcpkg-0.2.15.crate 228735 BLAKE2B 6b6bacd9a7fa38919241f45a97f58cae957e58d3aac99df208a26aa718e4f1644f4ccefa31b09151e5c1952288e0e5837c363918b98c7f55079a948a952c1c50 SHA512 7322a21e8811b2fe4e79e09dc321458068ecdf1953f05d36233f3278ecc0b1dfc64194db7010dd46fcf692285f42475beb090c6c6cac0c8f9fe0eb5c770e3172

diff --git a/dev-python/cryptography/cryptography-43.0.0.ebuild b/dev-python/cryptography/cryptography-43.0.0.ebuild
new file mode 100644
index 000000000000..e3d7b6510990
--- /dev/null
+++ b/dev-python/cryptography/cryptography-43.0.0.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CARGO_OPTIONAL=yes
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=maturin
+PYTHON_COMPAT=( python3_{10..13} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+CRATES="
+	asn1@0.16.2
+	asn1_derive@0.16.2
+	autocfg@1.3.0
+	base64@0.22.1
+	bitflags@2.6.0
+	cc@1.1.6
+	cfg-if@1.0.0
+	foreign-types-shared@0.1.1
+	foreign-types@0.3.2
+	heck@0.5.0
+	indoc@2.0.5
+	libc@0.2.155
+	memoffset@0.9.1
+	once_cell@1.19.0
+	openssl-macros@0.1.1
+	openssl-sys@0.9.103
+	openssl@0.10.66
+	pem@3.0.4
+	pkg-config@0.3.30
+	portable-atomic@1.7.0
+	proc-macro2@1.0.86
+	pyo3-build-config@0.22.2
+	pyo3-ffi@0.22.2
+	pyo3-macros-backend@0.22.2
+	pyo3-macros@0.22.2
+	pyo3@0.22.2
+	quote@1.0.36
+	self_cell@1.0.4
+	syn@2.0.71
+	target-lexicon@0.12.15
+	unicode-ident@1.0.12
+	unindent@0.2.3
+	vcpkg@0.2.15
+"
+
+inherit cargo distutils-r1 flag-o-matic multiprocessing pypi
+
+VEC_P=cryptography_vectors-$(ver_cut 1-3)
+DESCRIPTION="Library providing cryptographic recipes and primitives"
+HOMEPAGE="
+	https://github.com/pyca/cryptography/
+	https://pypi.org/project/cryptography/
+"
+SRC_URI+="
+	${CARGO_CRATE_URIS}
+	test? (
+		$(pypi_sdist_url cryptography_vectors "$(ver_cut 1-3)")
+	)
+"
+
+LICENSE="|| ( Apache-2.0 BSD ) PSF-2"
+# Dependent crate licenses
+LICENSE+="
+	Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-DFS-2016
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+	>=dev-libs/openssl-1.0.2o-r6:0=
+	$(python_gen_cond_dep '
+		>=dev-python/cffi-1.8:=[${PYTHON_USEDEP}]
+	' 'python*')
+"
+DEPEND="
+	${RDEPEND}
+"
+# XXX: Drop explicit >=virtual/rust-1.56.0 dep once that's the minimum in cargo.eclass
+# and replace it with ${RUST_DEPEND}
+BDEPEND="
+	dev-python/setuptools[${PYTHON_USEDEP}]
+	>=virtual/rust-1.56.0
+	test? (
+		dev-python/certifi[${PYTHON_USEDEP}]
+		>=dev-python/hypothesis-1.11.4[${PYTHON_USEDEP}]
+		dev-python/iso8601[${PYTHON_USEDEP}]
+		dev-python/pretend[${PYTHON_USEDEP}]
+		dev-python/pyasn1-modules[${PYTHON_USEDEP}]
+		dev-python/pytest-subtests[${PYTHON_USEDEP}]
+		dev-python/pytest-xdist[${PYTHON_USEDEP}]
+		dev-python/pytz[${PYTHON_USEDEP}]
+	)
+"
+
+# Files built without CFLAGS/LDFLAGS, acceptable for rust
+QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/cryptography/hazmat/bindings/_rust.*.so"
+
+distutils_enable_tests pytest
+
+src_unpack() {
+	cargo_src_unpack
+}
+
+src_prepare() {
+	local PATCHES=(
+		# https://github.com/pyca/cryptography/pull/11324
+		"${FILESDIR}/${P}-rust-openssl-crash.patch"
+	)
+
+	default
+
+	sed -i -e 's:--benchmark-disable::' pyproject.toml || die
+
+	# work around availability macros not supported in GCC (yet)
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		local darwinok=0
+		if [[ ${CHOST##*-darwin} -ge 16 ]] ; then
+			darwinok=1
+		fi
+		sed -i -e 's/__builtin_available(macOS 10\.12, \*)/'"${darwinok}"'/' \
+			src/_cffi_src/openssl/src/osrandom_engine.c || die
+	fi
+}
+
+python_configure_all() {
+	filter-lto # bug #903908
+
+	export UNSAFE_PYO3_SKIP_VERSION_CHECK=1
+}
+
+python_test() {
+	local -x PYTHONPATH="${PYTHONPATH}:${WORKDIR}/cryptography_vectors-${PV}"
+	local EPYTEST_IGNORE=(
+		tests/bench
+	)
+	epytest -n "$(makeopts_jobs)"
+}

diff --git a/dev-python/cryptography/files/cryptography-43.0.0-rust-openssl-crash.patch b/dev-python/cryptography/files/cryptography-43.0.0-rust-openssl-crash.patch
new file mode 100644
index 000000000000..74d2e1c92292
--- /dev/null
+++ b/dev-python/cryptography/files/cryptography-43.0.0-rust-openssl-crash.patch
@@ -0,0 +1,79 @@
+From ef3578980ed117feb5e1b4c7a1f8c68efcdc066e Mon Sep 17 00:00:00 2001
+From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
+Date: Sun, 21 Jul 2024 16:36:43 +0000
+Subject: [PATCH] Bump openssl from 0.10.65 to 0.10.66 in /src/rust (#11320)
+
+Bumps [openssl](https://github.com/sfackler/rust-openssl) from 0.10.65 to 0.10.66.
+- [Release notes](https://github.com/sfackler/rust-openssl/releases)
+- [Commits](https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.65...openssl-v0.10.66)
+
+---
+updated-dependencies:
+- dependency-name: openssl
+  dependency-type: direct:production
+  update-type: version-update:semver-patch
+...
+
+Signed-off-by: dependabot[bot] <support@github.com>
+Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
+---
+ src/rust/Cargo.lock                          | 4 ++--
+ src/rust/Cargo.toml                          | 2 +-
+ src/rust/cryptography-key-parsing/Cargo.toml | 2 +-
+ src/rust/cryptography-openssl/Cargo.toml     | 2 +-
+ 4 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/src/rust/Cargo.lock b/src/rust/Cargo.lock
+index fe3398f25393..c5a020fc8f10 100644
+--- a/src/rust/Cargo.lock
++++ b/src/rust/Cargo.lock
+@@ -179,9 +179,9 @@ checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
+ 
+ [[package]]
+ name = "openssl"
+-version = "0.10.65"
++version = "0.10.66"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c2823eb4c6453ed64055057ea8bd416eda38c71018723869dd043a3b1186115e"
++checksum = "9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1"
+ dependencies = [
+  "bitflags",
+  "cfg-if",
+diff --git a/src/rust/Cargo.toml b/src/rust/Cargo.toml
+index d58ee9e7ec28..4a91705de96c 100644
+--- a/src/rust/Cargo.toml
++++ b/src/rust/Cargo.toml
+@@ -26,7 +26,7 @@ cryptography-x509 = { path = "cryptography-x509" }
+ cryptography-x509-verification = { path = "cryptography-x509-verification" }
+ cryptography-openssl = { path = "cryptography-openssl" }
+ pem = { version = "3", default-features = false }
+-openssl = "0.10.65"
++openssl = "0.10.66"
+ openssl-sys = "0.9.103"
+ foreign-types-shared = "0.1"
+ self_cell = "1"
+diff --git a/src/rust/cryptography-key-parsing/Cargo.toml b/src/rust/cryptography-key-parsing/Cargo.toml
+index d1f945f961a0..e88e3bc9e691 100644
+--- a/src/rust/cryptography-key-parsing/Cargo.toml
++++ b/src/rust/cryptography-key-parsing/Cargo.toml
+@@ -9,6 +9,6 @@ rust-version.workspace = true
+ [dependencies]
+ asn1 = { version = "0.16.2", default-features = false }
+ cfg-if = "1"
+-openssl = "0.10.65"
++openssl = "0.10.66"
+ openssl-sys = "0.9.103"
+ cryptography-x509 = { path = "../cryptography-x509" }
+diff --git a/src/rust/cryptography-openssl/Cargo.toml b/src/rust/cryptography-openssl/Cargo.toml
+index c0f3f5d72ce1..f340ed87cf53 100644
+--- a/src/rust/cryptography-openssl/Cargo.toml
++++ b/src/rust/cryptography-openssl/Cargo.toml
+@@ -8,7 +8,7 @@ rust-version.workspace = true
+ 
+ [dependencies]
+ cfg-if = "1"
+-openssl = "0.10.65"
++openssl = "0.10.66"
+ ffi = { package = "openssl-sys", version = "0.9.101" }
+ foreign-types = "0.3"
+ foreign-types-shared = "0.1"


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2024-07-21 18:28 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-25 15:07 [gentoo-commits] repo/gentoo:master commit in: dev-python/cryptography/, dev-python/cryptography/files/ Michał Górny
  -- strict thread matches above, loose matches on Subject: below --
2024-07-21 18:28 Michał Górny
2022-07-29 14:37 Michał Górny
2021-05-15 11:51 Michał Górny
2018-04-13  1:07 Aaron Bauman
2017-05-03 11:02 Michał Górny
2017-02-26 16:44 Luca Barbato

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox