- Add 32bit_ASN1_Time.patch to quench errors on 32bit archs.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-M2Crypto?expand=0&rev=124
This commit is contained in:
parent
e2be38a5e9
commit
b5fd22981b
115
32bit_ASN1_Time.patch
Normal file
115
32bit_ASN1_Time.patch
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
---
|
||||||
|
src/M2Crypto/util.py | 4 ++++
|
||||||
|
tests/test_asn1.py | 11 +++++------
|
||||||
|
tests/test_x509.py | 9 ++++-----
|
||||||
|
3 files changed, 13 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
|
--- a/src/M2Crypto/util.py
|
||||||
|
+++ b/src/M2Crypto/util.py
|
||||||
|
@@ -13,6 +13,7 @@ from __future__ import absolute_import
|
||||||
|
|
||||||
|
import binascii
|
||||||
|
import logging
|
||||||
|
+import struct
|
||||||
|
import sys
|
||||||
|
|
||||||
|
from M2Crypto import m2, six
|
||||||
|
@@ -29,6 +30,9 @@ class UtilError(Exception):
|
||||||
|
|
||||||
|
m2.util_init(UtilError)
|
||||||
|
|
||||||
|
+def is_32bit():
|
||||||
|
+ # type: () -> bool
|
||||||
|
+ return (struct.calcsize("P") * 8) == 32
|
||||||
|
|
||||||
|
def pkcs5_pad(data, blklen=8):
|
||||||
|
# type: (str, int) -> str
|
||||||
|
--- a/tests/test_asn1.py
|
||||||
|
+++ b/tests/test_asn1.py
|
||||||
|
@@ -5,10 +5,9 @@
|
||||||
|
Copyright (c) 2005 Open Source Applications Foundation. All rights reserved."""
|
||||||
|
|
||||||
|
import datetime
|
||||||
|
-import platform
|
||||||
|
import time
|
||||||
|
|
||||||
|
-from M2Crypto import ASN1, m2
|
||||||
|
+from M2Crypto import ASN1, m2, util
|
||||||
|
from tests import unittest
|
||||||
|
|
||||||
|
|
||||||
|
@@ -39,7 +38,7 @@ class ASN1TestCase(unittest.TestCase):
|
||||||
|
def test_Object(self):
|
||||||
|
pass # XXX Dunno how to test
|
||||||
|
|
||||||
|
- @unittest.skipIf(platform.system() == 'Windows', 'Skip on Windows.')
|
||||||
|
+ @unittest.skipIf(util.is_32bit(), 'Skip on 32bit architectures.')
|
||||||
|
def test_TIME(self):
|
||||||
|
asn1 = ASN1.ASN1_TIME()
|
||||||
|
self.assertEqual(str(asn1), 'Bad time value')
|
||||||
|
@@ -66,7 +65,7 @@ class ASN1TestCase(unittest.TestCase):
|
||||||
|
t2 = time.strftime(format, time.gmtime(t))
|
||||||
|
self.assertEqual(t1, t2)
|
||||||
|
|
||||||
|
- @unittest.skipIf(platform.system() == 'Windows', 'Skip on Windows.')
|
||||||
|
+ @unittest.skipIf(util.is_32bit(), 'Skip on 32bit architectures.')
|
||||||
|
def test_UTCTIME(self):
|
||||||
|
asn1 = ASN1.ASN1_UTCTIME()
|
||||||
|
self.assertEqual(str(asn1), 'Bad time value')
|
||||||
|
@@ -93,7 +92,7 @@ class ASN1TestCase(unittest.TestCase):
|
||||||
|
t2 = time.strftime(format, time.gmtime(t))
|
||||||
|
self.assertEqual(t1, t2)
|
||||||
|
|
||||||
|
- @unittest.skipIf(platform.system() == 'Windows', 'Skip on Windows.')
|
||||||
|
+ @unittest.skipIf(util.is_32bit(), 'Skip on 32bit architectures.')
|
||||||
|
def test_TIME_datetime(self):
|
||||||
|
asn1 = ASN1.ASN1_TIME()
|
||||||
|
# Test get_datetime and set_datetime
|
||||||
|
@@ -119,7 +118,7 @@ class ASN1TestCase(unittest.TestCase):
|
||||||
|
self.assertEqual(t1, t2)
|
||||||
|
self.assertEqual(str(udt), str(asn1.get_datetime()))
|
||||||
|
|
||||||
|
- @unittest.skipIf(platform.system() == 'Windows', 'Skip on Windows.')
|
||||||
|
+ @unittest.skipIf(util.is_32bit(), 'Skip on 32bit architectures.')
|
||||||
|
def test_UTCTIME_datetime(self):
|
||||||
|
asn1 = ASN1.ASN1_UTCTIME()
|
||||||
|
# Test get_datetime and set_datetime
|
||||||
|
--- a/tests/test_x509.py
|
||||||
|
+++ b/tests/test_x509.py
|
||||||
|
@@ -12,11 +12,10 @@ Author: Heikki Toivonen
|
||||||
|
import base64
|
||||||
|
import logging
|
||||||
|
import os
|
||||||
|
-import platform
|
||||||
|
import time
|
||||||
|
import warnings
|
||||||
|
|
||||||
|
-from M2Crypto import ASN1, BIO, EVP, RSA, Rand, X509, m2, six # noqa
|
||||||
|
+from M2Crypto import ASN1, BIO, EVP, RSA, Rand, X509, m2, six, util # noqa
|
||||||
|
from tests import unittest
|
||||||
|
|
||||||
|
log = logging.getLogger(__name__)
|
||||||
|
@@ -244,7 +243,7 @@ class X509TestCase(unittest.TestCase):
|
||||||
|
req.set_version(0)
|
||||||
|
self.assertEqual(req.get_version(), 0)
|
||||||
|
|
||||||
|
- @unittest.skipIf(platform.system() == 'Windows', 'Skip on Windows.')
|
||||||
|
+ @unittest.skipIf(util.is_32bit(), 'Skip on 32bit architectures.')
|
||||||
|
def test_mkcert(self):
|
||||||
|
for utc in (True, False):
|
||||||
|
req, pk = self.mkreq(1024)
|
||||||
|
@@ -588,12 +587,12 @@ class X509TestCase(unittest.TestCase):
|
||||||
|
self.assertEqual(cert.get_serial_number(),
|
||||||
|
127614157056681299805556476275995414779)
|
||||||
|
|
||||||
|
- @unittest.skipIf(platform.system() == 'Windows', 'Skip on Windows.')
|
||||||
|
+ @unittest.skipIf(util.is_32bit(), 'Skip on 32bit architectures.')
|
||||||
|
def test_date_after_2050_working(self):
|
||||||
|
cert = X509.load_cert('tests/bad_date_cert.crt')
|
||||||
|
self.assertEqual(str(cert.get_not_after()), 'Feb 9 14:57:46 2116 GMT')
|
||||||
|
|
||||||
|
- @unittest.skipIf(platform.system() == 'Windows', 'Skip on Windows.')
|
||||||
|
+ @unittest.skipIf(util.is_32bit(), 'Skip on 32bit architectures.')
|
||||||
|
def test_date_reference_counting(self):
|
||||||
|
"""x509_get_not_before() and x509_get_not_after() return internal
|
||||||
|
pointers into X509. As the returned ASN1_TIME objects do not store any
|
@ -27,6 +27,7 @@ Tue Oct 24 15:13:16 UTC 2023 - Matej Cepl <mcepl@cepl.eu>
|
|||||||
CentOS 7 have been included.
|
CentOS 7 have been included.
|
||||||
- Introduce m2.err_clear_error()
|
- Introduce m2.err_clear_error()
|
||||||
- Make X509_verify_cert() accessible as m2.x509_verify_cert
|
- Make X509_verify_cert() accessible as m2.x509_verify_cert
|
||||||
|
- Add 32bit_ASN1_Time.patch to quench errors on 32bit archs.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Aug 7 13:14:41 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
Mon Aug 7 13:14:41 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
||||||
|
@ -27,6 +27,9 @@ URL: https://gitlab.com/m2crypto/m2crypto
|
|||||||
Source0: https://files.pythonhosted.org/packages/source/M/M2Crypto/M2Crypto-%{version}.tar.gz
|
Source0: https://files.pythonhosted.org/packages/source/M/M2Crypto/M2Crypto-%{version}.tar.gz
|
||||||
Source1: M2Crypto-%{version}.tar.gz.asc
|
Source1: M2Crypto-%{version}.tar.gz.asc
|
||||||
Source99: python-M2Crypto.keyring
|
Source99: python-M2Crypto.keyring
|
||||||
|
# PATCH-FIX-UPSTREAM 32bit_ASN1_Time.patch gl#m2crypto/m2crypto/-#341 mcepl@suse.com
|
||||||
|
# Not only Windows but all 32bit archs have fouled ASN1_Time.
|
||||||
|
Patch0: 32bit_ASN1_Time.patch
|
||||||
BuildRequires: %{python_module devel}
|
BuildRequires: %{python_module devel}
|
||||||
BuildRequires: %{python_module pip}
|
BuildRequires: %{python_module pip}
|
||||||
BuildRequires: %{python_module typing}
|
BuildRequires: %{python_module typing}
|
||||||
|
Loading…
Reference in New Issue
Block a user