Bug 1842713

Summary: update to 2.9 or backport SSL_CTX_get0_param exposure
Product: [Fedora] Fedora Reporter: Dominik 'Rathann' Mierzejewski <dominik>
Component: python-cryptographyAssignee: Jeremy Cline <jeremy>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 32CC: cheimes, itamar, jeremy, nick, npmccallum, terrycwk1994
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-05-25 16:23:16 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Dominik 'Rathann' Mierzejewski 2020-06-01 22:15:18 UTC
Description of problem:
Fedora 32 ships with python-cryptography-2.8 which doesn't expose SSL_CTX_get0_param from OpenSSL. This is required for mitmproxy-5.1.1, which I'm working on. Fedora rawhide has moved to python-3.9 already which isn't supported by mitmproxy yet and I get tons of errors from its test suite. While I intend to work with mitmproxy upstream on fixing those, I would like to be able to run mitmproxy on F32 in the meantime.
Could you either update to 2.9 or backport https://github.com/pyca/cryptography/commit/0538ca640c980f5a8fa75afbc916ad5d9ee793c9 to current 2.8 package?

Version-Release number of selected component (if applicable):
2.8-3.fc32

How reproducible:
Always.

Steps to Reproduce:
1. grep _get0_param /usr/lib64/python3.8/site-packages/cryptography/hazmat/bindings/openssl/_conditional.py

Actual results:
        "SSL_get0_param",

Expected results:
        "SSL_get0_param",
        "SSL_CTX_get0_param",

Additional info:
The SSL_CTX_get0_param symbol is available in the corresponding openssl library:

$ objdump -T /usr/lib64/libssl.so.1.1.1g | grep SSL_get0_param
0000000000039ac0 g    DF .text	000000000000000c  OPENSSL_1_1_0 SSL_get0_param

so it's only a matter of exposing it in python-cryptography.

Comment 1 Christian Heimes 2020-06-03 13:49:16 UTC
python-cryptography 2.9 is in rawhide. I didn't add 2.9 to Fedora 32 because 2.9 introduced backwards incompatible changes:

https://cryptography.io/en/latest/changelog/#v2-9
BACKWARDS INCOMPATIBLE: Reversed the order in which rfc4514_string() returns the RDNs as required by RFC 4514.

I'm reluctant to introduce a backwards incompatible change to F32.

Comment 2 Dominik 'Rathann' Mierzejewski 2020-06-03 14:24:58 UTC
Don't update to 2.9, then, just backport that one commit. Or maybe ask upstream to release 2.8.1 with that backport?

Comment 3 Fedora Program Management 2021-04-29 16:29:15 UTC
This message is a reminder that Fedora 32 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 32 on 2021-05-25.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '32'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 32 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 4 Ben Cotton 2021-05-25 16:23:16 UTC
Fedora 32 changed to end-of-life (EOL) status on 2021-05-25. Fedora 32 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.