Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1715243

Summary: m2crypto fails to build with OpenSSL in F31/Rawhide
Product: [Fedora] Fedora Reporter: Miro Hrončok <mhroncok>
Component: m2cryptoAssignee: Neal Gompa <ngompa13>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: rawhideCC: gholms, mcepl, mitr
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: m2crypto-0.35.2-1.fc30 m2crypto-0.35.2-1.fc29 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-06-26 04:07:00 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:
Bug Depends On:    
Bug Blocks: 1700317, 1686977, 1732841    

Description Miro Hrončok 2019-05-29 22:37:09 UTC
m2crypto 0.32.0-1.fc31 fails to build with Python 3.8.0a4:


======================================================================
ERROR: test_rsa_exceptions (tests.test_rsa.RSATestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/M2Crypto-0.32.0/tests/test_rsa.py", line 49, in test_rsa_exceptions
    RSA.rsa_error()
  File "/builddir/build/BUILD/M2Crypto-0.32.0/M2Crypto/RSA.py", line 330, in rsa_error
    raise RSAError(Err.get_error_message())
  File "/builddir/build/BUILD/M2Crypto-0.32.0/M2Crypto/Err.py", line 48, in get_error_message
    return six.ensure_text(get_error_reason(get_error_code()))
  File "/builddir/build/BUILD/M2Crypto-0.32.0/M2Crypto/Err.py", line 43, in get_error_reason
    return six.ensure_text(m2.err_reason_error_string(err))
  File "/builddir/build/BUILD/M2Crypto-0.32.0/M2Crypto/six.py", line 906, in ensure_text
    raise TypeError("not expecting type '%s'" % type(s))
TypeError: not expecting type '<type 'NoneType'>'

======================================================================
FAIL: test_public_encrypt (tests.test_rsa.RSATestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/M2Crypto-0.32.0/tests/test_rsa.py", line 128, in test_public_encrypt
    priv.private_decrypt(ctxt, RSA.sslv23_padding)
AssertionError: RSAError not raised

----------------------------------------------------------------------
Ran 296 tests in 92.063s

FAILED (failures=1, errors=1, skipped=1)

Full logs at https://copr.fedorainfracloud.org/coprs/g/python/python3.8/package/m2crypto/

Comment 1 Neal Gompa 2019-05-29 23:19:22 UTC
This failure occurs even with Python 3.7. It's pretty much something has broken between OpenSSL and M2Crypto again...

Comment 2 Neal Gompa 2019-05-29 23:44:54 UTC
This failure occurs with 0.33.0 on Rawhide too: https://koji.fedoraproject.org/koji/taskinfo?taskID=35136689

Comment 3 Matěj Cepl 2019-06-08 08:40:17 UTC
What you want is M2Crypto 0.35.1 (or higher).

Comment 4 Neal Gompa 2019-06-09 01:30:19 UTC
(In reply to Matěj Cepl from comment #3)
> What you want is M2Crypto 0.35.1 (or higher).

Frustratingly, 0.35.1 doesn't work either...

When I build locally on Rawhide now, I get the following error:


======================================================================
ERROR: test_public_encrypt (tests.test_rsa.RSATestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/M2Crypto-0.35.1/tests/test_rsa.py", line 134, in test_public_encrypt
    priv.public_encrypt(self.data, RSA.no_padding)
  File "/builddir/build/BUILD/M2Crypto-0.35.1/M2Crypto/RSA.py", line 67, in public_encrypt
    return m2.rsa_public_encrypt(self.rsa, data, padding)
RSAError: data too small for key size

----------------------------------------------------------------------
Ran 297 tests in 71.041s

FAILED (errors=1, skipped=1)
Test failed: <unittest.runner.TextTestResult run=297 errors=1 failures=0>


Matěj, any idea what's going on here?

Comment 5 Matěj Cepl 2019-06-09 05:39:28 UTC
Yes, Sebastian Andrzej Siewior from Debian (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=929903) discovered another problem and it has been fixed in yet unreleased commit https://gitlab.com/m2crypto/m2crypto/commit/3ee65bd56e92f8f3c465947b6752d92d5986dc81.

Comment 7 Fedora Update System 2019-06-25 02:47:43 UTC
FEDORA-2019-79f7935107 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-79f7935107

Comment 8 Fedora Update System 2019-06-26 04:07:00 UTC
m2crypto-0.35.2-1.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.

Comment 9 Fedora Update System 2019-06-26 04:11:04 UTC
m2crypto-0.35.2-1.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.