[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#914591: marked as done (stretch-pu: package python-cryptography/1.7.1-3)



Your message dated Sat, 27 Apr 2019 11:14:32 +0100
with message-id <1556360072.2690.35.camel@adam-barratt.org.uk>
and subject line Closing bugs for updates included in 9.9
has caused the Debian Bug report #914591,
regarding stretch-pu: package python-cryptography/1.7.1-3
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
914591: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=914591
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
User: release.debian.org@packages.debian.org
Usertags: pu
Tags: stretch
Severity: normal

With the intention of pushing OpenSSL 1.1.0j into Stretch here is the
proposed change for python-cryptography.
The package python-cryptography fails to build due to an API change of
BIO_callback_ctrl() in OpenSSL. While this is a no-no in a stable
release, it has been explained [0] that the function / callback was
always used with a different prototype. I fixed this by removing the
function / prototype from the python wrapper while upstream removed the
almost all BIO related wrappers [1].
I did a rebuild of python-cryptography's rdeps in Stretch against OpenSSL
1.1.0i and the proposed package with no fallout [2].

Any feedback from the python team is welcome.

[0] https://github.com/openssl/openssl/pull/4493#discussion_r143505277
[1] https://github.com/pyca/cryptography/pull/4220
[2] https://breakpoint.cc/openssl-rebuild/2018-09-02-rebuild-stretch-python-cryptography/

Sebastian
diff -Nru python-cryptography-1.7.1/debian/changelog python-cryptography-1.7.1/debian/changelog
--- python-cryptography-1.7.1/debian/changelog	2017-05-28 04:20:33.000000000 +0200
+++ python-cryptography-1.7.1/debian/changelog	2018-09-02 15:17:35.000000000 +0200
@@ -1,3 +1,11 @@
+python-cryptography (1.7.1-3+deb9u1) unstable; urgency=medium
+
+  * Remove BIO_callback_ctrl: The prototype differs with the OpenSSL's
+    definition of it after it was changed (fixed) within OpenSSL. It has no
+    users.
+
+ -- Sebastian Andrzej Siewior <sebastian@breakpoint.cc>  Sun, 02 Sep 2018 15:17:35 +0200
+
 python-cryptography (1.7.1-3) unstable; urgency=medium
 
   * Apply patch 6e7ea2e7 from upstream to fix compilation against OpenSSL
diff -Nru python-cryptography-1.7.1/debian/patches/Remove-BIO_callback_ctrl.patch python-cryptography-1.7.1/debian/patches/Remove-BIO_callback_ctrl.patch
--- python-cryptography-1.7.1/debian/patches/Remove-BIO_callback_ctrl.patch	1970-01-01 01:00:00.000000000 +0100
+++ python-cryptography-1.7.1/debian/patches/Remove-BIO_callback_ctrl.patch	2018-09-02 15:17:35.000000000 +0200
@@ -0,0 +1,52 @@
+From: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
+Date: Sun, 2 Sep 2018 15:00:43 +0200
+Subject: [PATCH] Remove BIO_callback_ctrl()
+
+This removes BIO_callback_ctrl(), bio_info_cb and its two users.
+This is the small version of #4220 ("Remove unused BIO bindings.").
+OpenSSL changed this type because it was wrong and the (now) different
+prototype fails to build.
+There should be users which rely on this function.
+
+Link: https://github.com/pyca/cryptography/pull/4220
+Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
+---
+ src/_cffi_src/openssl/bio.py | 8 --------
+ 1 file changed, 8 deletions(-)
+
+diff --git a/src/_cffi_src/openssl/bio.py b/src/_cffi_src/openssl/bio.py
+index a134d9b605b0..c4aa88c5b075 100644
+--- a/src/_cffi_src/openssl/bio.py
++++ b/src/_cffi_src/openssl/bio.py
+@@ -10,7 +10,6 @@ INCLUDES = """
+ 
+ TYPES = """
+ typedef struct bio_st BIO;
+-typedef void bio_info_cb(BIO *, int, const char *, int, long, long);
+ typedef ... bio_st;
+ typedef ... BIO_METHOD;
+ typedef ... BUF_MEM;
+@@ -69,11 +68,6 @@ BIO *BIO_new_fp(FILE *, int);
+ BIO *BIO_new_fd(int, int);
+ BIO *BIO_new_socket(int, int);
+ long BIO_ctrl(BIO *, int, long, void *);
+-long BIO_callback_ctrl(
+-    BIO *,
+-    int,
+-    void (*)(struct bio_st *, int, const char *, int, long, long)
+-);
+ long BIO_int_ctrl(BIO *, int, long, int);
+ size_t BIO_ctrl_pending(BIO *);
+ size_t BIO_ctrl_wpending(BIO *);
+@@ -125,8 +119,6 @@ int BIO_set_close(BIO *,long);
+ int BIO_get_close(BIO *);
+ int BIO_pending(BIO *);
+ int BIO_wpending(BIO *);
+-int BIO_get_info_callback(BIO *, bio_info_cb **);
+-int BIO_set_info_callback(BIO *, bio_info_cb *);
+ long BIO_get_buffer_num_lines(BIO *);
+ long BIO_set_read_buffer_size(BIO *, long);
+ long BIO_set_write_buffer_size(BIO *, long);
+-- 
+2.11.0
+
diff -Nru python-cryptography-1.7.1/debian/patches/series python-cryptography-1.7.1/debian/patches/series
--- python-cryptography-1.7.1/debian/patches/series	2017-05-28 04:20:33.000000000 +0200
+++ python-cryptography-1.7.1/debian/patches/series	2018-09-02 15:17:12.000000000 +0200
@@ -1,2 +1,3 @@
 0001-add-memory-limit-check-for-scrypt.patch
 0002-fix-compilation-on-1.1.0f-3603.patch
+Remove-BIO_callback_ctrl.patch

--- End Message ---
--- Begin Message ---
Version: 9.9

Hi,

The update referenced by each of these bugs was included in this
morning's stretch point release.

Regards,

Adam

--- End Message ---

Reply to: