Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-cryptography for
openSUSE:Factory checked in at 2025-05-13 20:12:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-cryptography (Old)
and /work/SRC/openSUSE:Factory/.python-cryptography.new.30101 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-cryptography"
Tue May 13 20:12:01 2025 rev:101 rq:1276716 version:44.0.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-cryptography/python-cryptography.changes
2025-03-25 22:08:12.140187696 +0100
+++
/work/SRC/openSUSE:Factory/.python-cryptography.new.30101/python-cryptography.changes
2025-05-13 20:12:05.411509313 +0200
@@ -1,0 +2,6 @@
+Wed May 7 15:45:10 UTC 2025 - Nico Krapp <[email protected]>
+
+- Update to 44.0.3
+ * Fixed compilation when using LibreSSL 4.1.0.
+
+-------------------------------------------------------------------
Old:
----
cryptography-44.0.2.tar.gz
New:
----
cryptography-44.0.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-cryptography.spec ++++++
--- /var/tmp/diff_new_pack.489Zyw/_old 2025-05-13 20:12:07.715606017 +0200
+++ /var/tmp/diff_new_pack.489Zyw/_new 2025-05-13 20:12:07.731606688 +0200
@@ -28,7 +28,7 @@
%{?sle15_python_module_pythons}
Name: python-cryptography%{psuffix}
# ALWAYS KEEP IN SYNC WITH python-cryptography-vectors!
-Version: 44.0.2
+Version: 44.0.3
Release: 0
Summary: Python library which exposes cryptographic recipes and
primitives
License: Apache-2.0 OR BSD-3-Clause
++++++ cryptography-44.0.2.tar.gz -> cryptography-44.0.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/CHANGELOG.rst
new/cryptography-44.0.3/CHANGELOG.rst
--- old/cryptography-44.0.2/CHANGELOG.rst 2025-03-02 00:53:51.000000000
+0100
+++ new/cryptography-44.0.3/CHANGELOG.rst 2025-05-02 21:28:28.000000000
+0200
@@ -1,6 +1,13 @@
Changelog
=========
+.. _v44-0-3:
+
+44.0.3 - 2025-05-02
+~~~~~~~~~~~~~~~~~~~
+
+* Fixed compilation when using LibreSSL 4.1.0.
+
.. _v44-0-2:
44.0.2 - 2025-03-01
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/Cargo.lock
new/cryptography-44.0.3/Cargo.lock
--- old/cryptography-44.0.2/Cargo.lock 2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/Cargo.lock 2025-05-02 21:28:28.000000000 +0200
@@ -215,9 +215,9 @@
[[package]]
name = "openssl-sys"
-version = "0.9.104"
+version = "0.9.108"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741"
+checksum = "e145e1651e858e820e4860f7b9c5e169bc1d8ce1c86043be79fa7b7634821847"
dependencies = [
"cc",
"libc",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/Cargo.toml
new/cryptography-44.0.3/Cargo.toml
--- old/cryptography-44.0.2/Cargo.toml 2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/Cargo.toml 2025-05-02 21:28:28.000000000 +0200
@@ -21,6 +21,8 @@
[workspace.dependencies]
asn1 = { version = "0.20.0", default-features = false }
pyo3 = { version = "0.23.5", features = ["abi3"] }
+openssl = "0.10.72"
+openssl-sys = "0.9.108"
[profile.release]
overflow-checks = true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/PKG-INFO
new/cryptography-44.0.3/PKG-INFO
--- old/cryptography-44.0.2/PKG-INFO 1970-01-01 01:00:00.000000000 +0100
+++ new/cryptography-44.0.3/PKG-INFO 1970-01-01 01:00:00.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.3
Name: cryptography
-Version: 44.0.2
+Version: 44.0.3
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
@@ -28,7 +28,7 @@
Requires-Dist: bcrypt >=3.1.5 ; extra == 'ssh'
Requires-Dist: nox >=2024.4.15 ; extra == 'nox'
Requires-Dist: nox[uv] >=2024.3.2 ; python_version >= '3.8' and extra == 'nox'
-Requires-Dist: cryptography-vectors ==44.0.2 ; extra == 'test'
+Requires-Dist: cryptography-vectors ==44.0.3 ; extra == 'test'
Requires-Dist: pytest >=7.4.0 ; extra == 'test'
Requires-Dist: pytest-benchmark >=4.0 ; extra == 'test'
Requires-Dist: pytest-cov >=2.10.1 ; extra == 'test'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/pyproject.toml
new/cryptography-44.0.3/pyproject.toml
--- old/cryptography-44.0.2/pyproject.toml 2025-03-02 00:53:51.000000000
+0100
+++ new/cryptography-44.0.3/pyproject.toml 2025-05-02 21:28:28.000000000
+0200
@@ -14,7 +14,7 @@
[project]
name = "cryptography"
-version = "44.0.2"
+version = "44.0.3"
authors = [
{name = "The Python Cryptographic Authority and individual contributors",
email = "[email protected]"}
]
@@ -65,7 +65,7 @@
# All the following are used for our own testing.
nox = ["nox >=2024.04.15", "nox[uv] >=2024.03.02; python_version >= '3.8'"]
test = [
- "cryptography_vectors==44.0.2",
+ "cryptography_vectors==44.0.3",
"pytest >=7.4.0",
"pytest-benchmark >=4.0",
"pytest-cov >=2.10.1",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/cryptography/__about__.py
new/cryptography-44.0.3/src/cryptography/__about__.py
--- old/cryptography-44.0.2/src/cryptography/__about__.py 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/cryptography/__about__.py 2025-05-02
21:28:28.000000000 +0200
@@ -10,7 +10,7 @@
"__version__",
]
-__version__ = "44.0.2"
+__version__ = "44.0.3"
__author__ = "The Python Cryptographic Authority and individual contributors"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/cryptography/hazmat/backends/openssl/backend.py
new/cryptography-44.0.3/src/cryptography/hazmat/backends/openssl/backend.py
--- old/cryptography-44.0.2/src/cryptography/hazmat/backends/openssl/backend.py
2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/cryptography/hazmat/backends/openssl/backend.py
2025-05-02 21:28:28.000000000 +0200
@@ -169,14 +169,17 @@
if isinstance(padding, PKCS1v15):
return True
elif isinstance(padding, PSS) and isinstance(padding._mgf, MGF1):
- # SHA1 is permissible in MGF1 in FIPS even when SHA1 is blocked
- # as signature algorithm.
- if self._fips_enabled and isinstance(
- padding._mgf._algorithm, hashes.SHA1
+ # FIPS 186-4 only allows salt length == digest length for PSS
+ # It is technically acceptable to set an explicit salt length
+ # equal to the digest length and this will incorrectly fail, but
+ # since we don't do that in the tests and this method is
+ # private, we'll ignore that until we need to do otherwise.
+ if (
+ self._fips_enabled
+ and padding._salt_length != PSS.DIGEST_LENGTH
):
- return True
- else:
- return self.hash_supported(padding._mgf._algorithm)
+ return False
+ return self.hash_supported(padding._mgf._algorithm)
elif isinstance(padding, OAEP) and isinstance(padding._mgf, MGF1):
return self._oaep_hash_supported(
padding._mgf._algorithm
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-cffi/build.rs
new/cryptography-44.0.3/src/rust/cryptography-cffi/build.rs
--- old/cryptography-44.0.2/src/rust/cryptography-cffi/build.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/cryptography-cffi/build.rs 2025-05-02
21:28:28.000000000 +0200
@@ -71,7 +71,7 @@
// This is because we don't want a potentially random build path to end up
in the binary because
// CFFI generated code uses the __FILE__ macro in its debug messages.
if let Some(out_dir_str) = Path::new(&out_dir).to_str() {
- build.flag_if_supported(format!("-fmacro-prefix-map={}=.",
out_dir_str).as_str());
+
build.flag_if_supported(format!("-fmacro-prefix-map={out_dir_str}").as_str());
}
for python_include in env::split_paths(&python_includes) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-keepalive/src/lib.rs
new/cryptography-44.0.3/src/rust/cryptography-keepalive/src/lib.rs
--- old/cryptography-44.0.2/src/rust/cryptography-keepalive/src/lib.rs
2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/cryptography-keepalive/src/lib.rs
2025-05-02 21:28:28.000000000 +0200
@@ -4,10 +4,11 @@
#![deny(rust_2018_idioms, clippy::undocumented_unsafe_blocks)]
-use pyo3::pybacked::{PyBackedBytes, PyBackedStr};
use std::cell::UnsafeCell;
use std::ops::Deref;
+use pyo3::pybacked::{PyBackedBytes, PyBackedStr};
+
pub struct KeepAlive<T: StableDeref> {
values: UnsafeCell<Vec<T>>,
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-openssl/src/aead.rs
new/cryptography-44.0.3/src/rust/cryptography-openssl/src/aead.rs
--- old/cryptography-44.0.2/src/rust/cryptography-openssl/src/aead.rs
2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/cryptography-openssl/src/aead.rs
2025-05-02 21:28:28.000000000 +0200
@@ -2,9 +2,10 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
-use crate::{cvt, cvt_p, OpenSSLResult};
use foreign_types_shared::{ForeignType, ForeignTypeRef};
+use crate::{cvt, cvt_p, OpenSSLResult};
+
pub enum AeadType {
ChaCha20Poly1305,
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-openssl/src/fips.rs
new/cryptography-44.0.3/src/rust/cryptography-openssl/src/fips.rs
--- old/cryptography-44.0.2/src/rust/cryptography-openssl/src/fips.rs
2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/cryptography-openssl/src/fips.rs
2025-05-02 21:28:28.000000000 +0200
@@ -2,14 +2,15 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
-#[cfg(CRYPTOGRAPHY_OPENSSL_300_OR_GREATER)]
-use crate::{cvt, OpenSSLResult};
#[cfg(all(
CRYPTOGRAPHY_OPENSSL_300_OR_GREATER,
not(any(CRYPTOGRAPHY_IS_LIBRESSL, CRYPTOGRAPHY_IS_BORINGSSL))
))]
use std::ptr;
+#[cfg(CRYPTOGRAPHY_OPENSSL_300_OR_GREATER)]
+use crate::{cvt, OpenSSLResult};
+
pub fn is_enabled() -> bool {
cfg_if::cfg_if! {
if #[cfg(any(CRYPTOGRAPHY_IS_LIBRESSL, CRYPTOGRAPHY_IS_BORINGSSL))] {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-x509/src/certificate.rs
new/cryptography-44.0.3/src/rust/cryptography-x509/src/certificate.rs
--- old/cryptography-44.0.2/src/rust/cryptography-x509/src/certificate.rs
2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/cryptography-x509/src/certificate.rs
2025-05-02 21:28:28.000000000 +0200
@@ -2,12 +2,9 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
-use crate::common;
-use crate::extensions;
-use crate::extensions::DuplicateExtensionsError;
-use crate::extensions::Extensions;
-use crate::name;
+use crate::extensions::{DuplicateExtensionsError, Extensions};
use crate::name::NameReadable;
+use crate::{common, extensions, name};
#[derive(asn1::Asn1Read, asn1::Asn1Write, Hash, PartialEq, Eq, Clone)]
pub struct Certificate<'a> {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-x509/src/csr.rs
new/cryptography-44.0.3/src/rust/cryptography-x509/src/csr.rs
--- old/cryptography-44.0.2/src/rust/cryptography-x509/src/csr.rs
2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/cryptography-x509/src/csr.rs
2025-05-02 21:28:28.000000000 +0200
@@ -2,10 +2,7 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
-use crate::common;
-use crate::extensions;
-use crate::name;
-use crate::oid;
+use crate::{common, extensions, name, oid};
#[derive(asn1::Asn1Read, asn1::Asn1Write)]
pub struct Csr<'a> {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-x509/src/extensions.rs
new/cryptography-44.0.3/src/rust/cryptography-x509/src/extensions.rs
--- old/cryptography-44.0.2/src/rust/cryptography-x509/src/extensions.rs
2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/cryptography-x509/src/extensions.rs
2025-05-02 21:28:28.000000000 +0200
@@ -4,10 +4,8 @@
use std::collections::HashSet;
-use crate::common;
use crate::common::Asn1Operation;
-use crate::crl;
-use crate::name;
+use crate::{common, crl, name};
pub struct DuplicateExtensionsError(pub asn1::ObjectIdentifier);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-x509/src/pkcs12.rs
new/cryptography-44.0.3/src/rust/cryptography-x509/src/pkcs12.rs
--- old/cryptography-44.0.2/src/rust/cryptography-x509/src/pkcs12.rs
2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/cryptography-x509/src/pkcs12.rs
2025-05-02 21:28:28.000000000 +0200
@@ -55,7 +55,7 @@
#[derive(asn1::Asn1DefinedByWrite)]
pub enum BagValue<'a> {
#[defined_by(CERT_BAG_OID)]
- CertBag(CertBag<'a>),
+ CertBag(Box<CertBag<'a>>),
#[defined_by(KEY_BAG_OID)]
KeyBag(asn1::Tlv<'a>),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-x509-verification/src/lib.rs
new/cryptography-44.0.3/src/rust/cryptography-x509-verification/src/lib.rs
--- old/cryptography-44.0.2/src/rust/cryptography-x509-verification/src/lib.rs
2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/cryptography-x509-verification/src/lib.rs
2025-05-02 21:28:28.000000000 +0200
@@ -16,21 +16,19 @@
use std::vec;
use asn1::ObjectIdentifier;
-use cryptography_x509::extensions::{DuplicateExtensionsError, Extensions};
-use cryptography_x509::{
- common::Asn1Read,
- extensions::{NameConstraints, SubjectAlternativeName},
- name::GeneralName,
- oid::{NAME_CONSTRAINTS_OID, SUBJECT_ALTERNATIVE_NAME_OID},
+use cryptography_x509::common::Asn1Read;
+use cryptography_x509::extensions::{
+ DuplicateExtensionsError, Extensions, NameConstraints,
SubjectAlternativeName,
};
+use cryptography_x509::name::GeneralName;
+use cryptography_x509::oid::{NAME_CONSTRAINTS_OID,
SUBJECT_ALTERNATIVE_NAME_OID};
use types::{RFC822Constraint, RFC822Name};
use crate::certificate::cert_is_self_issued;
use crate::ops::{CryptoOps, VerificationCertificate};
use crate::policy::Policy;
use crate::trust_store::Store;
-use crate::types::DNSName;
-use crate::types::{DNSConstraint, IPAddress, IPConstraint};
+use crate::types::{DNSConstraint, DNSName, IPAddress, IPConstraint};
use crate::ApplyNameConstraintStatus::{Applied, Skipped};
pub enum ValidationErrorKind<'chain, B: CryptoOps> {
@@ -175,12 +173,10 @@
) {
(Some(pattern), Some(name)) =>
Ok(Applied(pattern.matches(&name))),
(_, None) =>
Err(ValidationError::new(ValidationErrorKind::Other(format!(
- "unsatisfiable IP name constraint: malformed SAN {:?}",
- name,
+ "unsatisfiable IP name constraint: malformed SAN
{name:?}",
)))),
(None, _) =>
Err(ValidationError::new(ValidationErrorKind::Other(format!(
- "malformed IP name constraints: {:?}",
- pattern
+ "malformed IP name constraints: {pattern:?}",
)))),
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-x509-verification/src/ops.rs
new/cryptography-44.0.3/src/rust/cryptography-x509-verification/src/ops.rs
--- old/cryptography-44.0.2/src/rust/cryptography-x509-verification/src/ops.rs
2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/cryptography-x509-verification/src/ops.rs
2025-05-02 21:28:28.000000000 +0200
@@ -90,9 +90,10 @@
#[cfg(test)]
pub(crate) mod tests {
+ use cryptography_x509::certificate::Certificate;
+
use super::VerificationCertificate;
use crate::certificate::tests::PublicKeyErrorOps;
- use cryptography_x509::certificate::Certificate;
pub(crate) fn v1_cert_pem() -> pem::Pem {
pem::parse(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-x509-verification/src/policy/extension.rs
new/cryptography-44.0.3/src/rust/cryptography-x509-verification/src/policy/extension.rs
---
old/cryptography-44.0.2/src/rust/cryptography-x509-verification/src/policy/extension.rs
2025-03-02 00:53:51.000000000 +0100
+++
new/cryptography-44.0.3/src/rust/cryptography-x509-verification/src/policy/extension.rs
2025-05-02 21:28:28.000000000 +0200
@@ -2,19 +2,17 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
+use cryptography_x509::certificate::Certificate;
+use cryptography_x509::extensions::{Extension, Extensions};
use cryptography_x509::oid::{
AUTHORITY_INFORMATION_ACCESS_OID, AUTHORITY_KEY_IDENTIFIER_OID,
BASIC_CONSTRAINTS_OID,
EXTENDED_KEY_USAGE_OID, KEY_USAGE_OID, NAME_CONSTRAINTS_OID,
SUBJECT_ALTERNATIVE_NAME_OID,
SUBJECT_KEY_IDENTIFIER_OID,
};
-use cryptography_x509::{
- certificate::Certificate,
- extensions::{Extension, Extensions},
-};
-use crate::{
- ops::CryptoOps, policy::Policy, ValidationError, ValidationErrorKind,
ValidationResult,
-};
+use crate::ops::CryptoOps;
+use crate::policy::Policy;
+use crate::{ValidationError, ValidationErrorKind, ValidationResult};
pub(crate) struct ExtensionPolicy<B: CryptoOps> {
pub(crate) authority_information_access: ExtensionValidator<B>,
@@ -266,17 +264,13 @@
}
pub(crate) mod ee {
- use cryptography_x509::{
- certificate::Certificate,
- extensions::{
- BasicConstraints, ExtendedKeyUsage, Extension, KeyUsage,
SubjectAlternativeName,
- },
+ use cryptography_x509::certificate::Certificate;
+ use cryptography_x509::extensions::{
+ BasicConstraints, ExtendedKeyUsage, Extension, KeyUsage,
SubjectAlternativeName,
};
- use crate::{
- ops::CryptoOps,
- policy::{Policy, ValidationError, ValidationErrorKind,
ValidationResult},
- };
+ use crate::ops::CryptoOps;
+ use crate::policy::{Policy, ValidationError, ValidationErrorKind,
ValidationResult};
pub(crate) fn basic_constraints<'chain, B: CryptoOps>(
_policy: &Policy<'_, B>,
@@ -379,20 +373,16 @@
}
pub(crate) mod ca {
- use cryptography_x509::{
- certificate::Certificate,
- common::Asn1Read,
- extensions::{
- AuthorityKeyIdentifier, BasicConstraints, ExtendedKeyUsage,
Extension, KeyUsage,
- NameConstraints,
- },
- oid::EKU_ANY_KEY_USAGE_OID,
+ use cryptography_x509::certificate::Certificate;
+ use cryptography_x509::common::Asn1Read;
+ use cryptography_x509::extensions::{
+ AuthorityKeyIdentifier, BasicConstraints, ExtendedKeyUsage, Extension,
KeyUsage,
+ NameConstraints,
};
+ use cryptography_x509::oid::EKU_ANY_KEY_USAGE_OID;
- use crate::{
- ops::CryptoOps,
- policy::{Policy, ValidationError, ValidationErrorKind,
ValidationResult},
- };
+ use crate::ops::CryptoOps;
+ use crate::policy::{Policy, ValidationError, ValidationErrorKind,
ValidationResult};
pub(crate) fn authority_key_identifier<'chain, B: CryptoOps>(
_policy: &Policy<'_, B>,
@@ -529,16 +519,12 @@
}
pub(crate) mod common {
- use cryptography_x509::{
- certificate::Certificate,
- common::Asn1Read,
- extensions::{Extension, SequenceOfAccessDescriptions},
- };
+ use cryptography_x509::certificate::Certificate;
+ use cryptography_x509::common::Asn1Read;
+ use cryptography_x509::extensions::{Extension,
SequenceOfAccessDescriptions};
- use crate::{
- ops::CryptoOps,
- policy::{Policy, ValidationResult},
- };
+ use crate::ops::CryptoOps;
+ use crate::policy::{Policy, ValidationResult};
pub(crate) fn authority_information_access<'chain, B: CryptoOps>(
_policy: &Policy<'_, B>,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-x509-verification/src/policy/mod.rs
new/cryptography-44.0.3/src/rust/cryptography-x509-verification/src/policy/mod.rs
---
old/cryptography-44.0.2/src/rust/cryptography-x509-verification/src/policy/mod.rs
2025-03-02 00:53:51.000000000 +0100
+++
new/cryptography-44.0.3/src/rust/cryptography-x509-verification/src/policy/mod.rs
2025-05-02 21:28:28.000000000 +0200
@@ -601,10 +601,8 @@
use asn1::{DateTime, SequenceOfWriter};
use cryptography_x509::common::Time;
- use cryptography_x509::{
- extensions::SubjectAlternativeName,
- name::{GeneralName, UnvalidatedIA5String},
- };
+ use cryptography_x509::extensions::SubjectAlternativeName;
+ use cryptography_x509::name::{GeneralName, UnvalidatedIA5String};
use super::{
permits_validity_date, ECDSA_SHA256, ECDSA_SHA384, ECDSA_SHA512,
RSASSA_PKCS1V15_SHA256,
@@ -612,13 +610,11 @@
RSASSA_PSS_SHA512, WEBPKI_PERMITTED_SIGNATURE_ALGORITHMS,
};
use crate::certificate::tests::PublicKeyErrorOps;
- use crate::{
- policy::{
- Subject, SPKI_RSA, SPKI_SECP256R1, SPKI_SECP384R1, SPKI_SECP521R1,
- WEBPKI_PERMITTED_SPKI_ALGORITHMS,
- },
- types::{DNSName, IPAddress},
+ use crate::policy::{
+ Subject, SPKI_RSA, SPKI_SECP256R1, SPKI_SECP384R1, SPKI_SECP521R1,
+ WEBPKI_PERMITTED_SPKI_ALGORITHMS,
};
+ use crate::types::{DNSName, IPAddress};
#[test]
fn test_webpki_permitted_spki_algorithms_canonical_encodings() {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-x509-verification/src/trust_store.rs
new/cryptography-44.0.3/src/rust/cryptography-x509-verification/src/trust_store.rs
---
old/cryptography-44.0.2/src/rust/cryptography-x509-verification/src/trust_store.rs
2025-03-02 00:53:51.000000000 +0100
+++
new/cryptography-44.0.3/src/rust/cryptography-x509-verification/src/trust_store.rs
2025-05-02 21:28:28.000000000 +0200
@@ -6,8 +6,7 @@
use cryptography_x509::name::Name;
-use crate::CryptoOps;
-use crate::VerificationCertificate;
+use crate::{CryptoOps, VerificationCertificate};
/// A `Store` represents the core state needed for X.509 path validation.
pub struct Store<'a, B: CryptoOps> {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/src/rust/cryptography-x509-verification/src/types.rs
new/cryptography-44.0.3/src/rust/cryptography-x509-verification/src/types.rs
---
old/cryptography-44.0.2/src/rust/cryptography-x509-verification/src/types.rs
2025-03-02 00:53:51.000000000 +0100
+++
new/cryptography-44.0.3/src/rust/cryptography-x509-verification/src/types.rs
2025-05-02 21:28:28.000000000 +0200
@@ -400,9 +400,8 @@
#[cfg(test)]
mod tests {
- use crate::types::{DNSConstraint, DNSName, DNSPattern, IPAddress,
IPConstraint, RFC822Name};
-
use super::RFC822Constraint;
+ use crate::types::{DNSConstraint, DNSName, DNSPattern, IPAddress,
IPConstraint, RFC822Name};
#[test]
fn test_dnsname_debug_trait() {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/asn1.rs
new/cryptography-44.0.3/src/rust/src/asn1.rs
--- old/cryptography-44.0.2/src/rust/src/asn1.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/asn1.rs 2025-05-02
21:28:28.000000000 +0200
@@ -4,8 +4,7 @@
use cryptography_x509::common::{DssSignature, SubjectPublicKeyInfo};
use pyo3::pybacked::PyBackedBytes;
-use pyo3::types::IntoPyDict;
-use pyo3::types::PyAnyMethods;
+use pyo3::types::{IntoPyDict, PyAnyMethods};
use pyo3::IntoPyObject;
use crate::error::{CryptographyError, CryptographyResult};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/backend/aead.rs
new/cryptography-44.0.3/src/rust/src/backend/aead.rs
--- old/cryptography-44.0.2/src/rust/src/backend/aead.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/backend/aead.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,10 +2,11 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
+use pyo3::types::{PyAnyMethods, PyListMethods};
+
use crate::buf::CffiBuf;
use crate::error::{CryptographyError, CryptographyResult};
use crate::{exceptions, types};
-use pyo3::types::{PyAnyMethods, PyListMethods};
fn check_length(data: &[u8]) -> CryptographyResult<()> {
if data.len() > (i32::MAX as usize) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/backend/ciphers.rs
new/cryptography-44.0.3/src/rust/src/backend/ciphers.rs
--- old/cryptography-44.0.2/src/rust/src/backend/ciphers.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/backend/ciphers.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,13 +2,13 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
+use pyo3::types::PyAnyMethods;
+use pyo3::IntoPyObject;
+
use crate::backend::cipher_registry;
use crate::buf::{CffiBuf, CffiMutBuf};
use crate::error::{CryptographyError, CryptographyResult};
-use crate::exceptions;
-use crate::types;
-use pyo3::types::PyAnyMethods;
-use pyo3::IntoPyObject;
+use crate::{exceptions, types};
pub(crate) struct CipherContext {
ctx: openssl::cipher_ctx::CipherCtx,
@@ -495,16 +495,14 @@
if tag.len() < min_tag_length {
return Err(CryptographyError::from(
pyo3::exceptions::PyValueError::new_err(format!(
- "Authentication tag must be {} bytes or longer.",
- min_tag_length
+ "Authentication tag must be {min_tag_length} bytes or
longer.",
)),
));
} else if tag.len() > 16 {
return Err(CryptographyError::from(
- pyo3::exceptions::PyValueError::new_err(format!(
- "Authentication tag cannot be more than {} bytes.",
- 16
- )),
+ pyo3::exceptions::PyValueError::new_err(
+ "Authentication tag cannot be more than 16 bytes.",
+ ),
));
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/backend/cmac.rs
new/cryptography-44.0.3/src/rust/src/backend/cmac.rs
--- old/cryptography-44.0.2/src/rust/src/backend/cmac.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/backend/cmac.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,11 +2,12 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
+use pyo3::types::{PyAnyMethods, PyBytesMethods};
+
use crate::backend::cipher_registry;
use crate::buf::CffiBuf;
use crate::error::{CryptographyError, CryptographyResult};
use crate::{exceptions, types};
-use pyo3::types::{PyAnyMethods, PyBytesMethods};
#[pyo3::pyclass(
module = "cryptography.hazmat.bindings._rust.openssl.cmac",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/backend/dh.rs
new/cryptography-44.0.3/src/rust/src/backend/dh.rs
--- old/cryptography-44.0.2/src/rust/src/backend/dh.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/backend/dh.rs 2025-05-02
21:28:28.000000000 +0200
@@ -3,12 +3,12 @@
// for complete details.
use cryptography_x509::common;
+use pyo3::types::PyAnyMethods;
use crate::asn1::encode_der_data;
use crate::backend::utils;
use crate::error::{CryptographyError, CryptographyResult};
use crate::{types, x509};
-use pyo3::types::PyAnyMethods;
const MIN_MODULUS_SIZE: u32 = 512;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/backend/dsa.rs
new/cryptography-44.0.3/src/rust/src/backend/dsa.rs
--- old/cryptography-44.0.2/src/rust/src/backend/dsa.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/backend/dsa.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,11 +2,12 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
+use pyo3::types::PyAnyMethods;
+
use crate::backend::utils;
use crate::buf::CffiBuf;
use crate::error::{CryptographyError, CryptographyResult};
use crate::{error, exceptions};
-use pyo3::types::PyAnyMethods;
#[pyo3::pyclass(
frozen,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/backend/hashes.rs
new/cryptography-44.0.3/src/rust/src/backend/hashes.rs
--- old/cryptography-44.0.2/src/rust/src/backend/hashes.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/backend/hashes.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,9 +2,10 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
-use pyo3::types::PyAnyMethods;
use std::borrow::Cow;
+use pyo3::types::PyAnyMethods;
+
use crate::buf::CffiBuf;
use crate::error::{CryptographyError, CryptographyResult};
use crate::{exceptions, types};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/backend/hmac.rs
new/cryptography-44.0.3/src/rust/src/backend/hmac.rs
--- old/cryptography-44.0.2/src/rust/src/backend/hmac.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/backend/hmac.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,11 +2,12 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
+use pyo3::types::PyBytesMethods;
+
use crate::backend::hashes::message_digest_from_algorithm;
use crate::buf::CffiBuf;
use crate::error::{CryptographyError, CryptographyResult};
use crate::exceptions;
-use pyo3::types::PyBytesMethods;
#[pyo3::pyclass(
module = "cryptography.hazmat.bindings._rust.openssl.hmac",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/backend/poly1305.rs
new/cryptography-44.0.3/src/rust/src/backend/poly1305.rs
--- old/cryptography-44.0.2/src/rust/src/backend/poly1305.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/backend/poly1305.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,10 +2,11 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
+use pyo3::types::PyBytesMethods;
+
use crate::buf::CffiBuf;
use crate::error::{CryptographyError, CryptographyResult};
use crate::exceptions;
-use pyo3::types::PyBytesMethods;
#[cfg(any(CRYPTOGRAPHY_IS_BORINGSSL, CRYPTOGRAPHY_IS_LIBRESSL))]
struct Poly1305Boring {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/backend/rsa.rs
new/cryptography-44.0.3/src/rust/src/backend/rsa.rs
--- old/cryptography-44.0.2/src/rust/src/backend/rsa.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/backend/rsa.rs 2025-05-02
21:28:28.000000000 +0200
@@ -5,11 +5,12 @@
use std::collections::hash_map::DefaultHasher;
use std::hash::{Hash, Hasher};
+use pyo3::types::PyAnyMethods;
+
use crate::backend::{hashes, utils};
use crate::buf::CffiBuf;
use crate::error::{CryptographyError, CryptographyResult};
use crate::{exceptions, types};
-use pyo3::types::PyAnyMethods;
#[pyo3::pyclass(
frozen,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/backend/utils.rs
new/cryptography-44.0.3/src/rust/src/backend/utils.rs
--- old/cryptography-44.0.2/src/rust/src/backend/utils.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/backend/utils.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,10 +2,11 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
+use pyo3::types::{PyAnyMethods, PyBytesMethods};
+
use crate::backend::hashes::Hash;
use crate::error::{CryptographyError, CryptographyResult};
use crate::{error, types};
-use pyo3::types::{PyAnyMethods, PyBytesMethods};
pub(crate) fn py_int_to_bn(
py: pyo3::Python<'_>,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/buf.rs
new/cryptography-44.0.3/src/rust/src/buf.rs
--- old/cryptography-44.0.2/src/rust/src/buf.rs 2025-03-02 00:53:51.000000000
+0100
+++ new/cryptography-44.0.3/src/rust/src/buf.rs 2025-05-02 21:28:28.000000000
+0200
@@ -2,11 +2,12 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
-use crate::types;
-use pyo3::types::IntoPyDict;
-use pyo3::types::PyAnyMethods;
use std::slice;
+use pyo3::types::{IntoPyDict, PyAnyMethods};
+
+use crate::types;
+
pub(crate) struct CffiBuf<'p> {
pyobj: pyo3::Bound<'p, pyo3::PyAny>,
_bufobj: pyo3::Bound<'p, pyo3::PyAny>,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/error.rs
new/cryptography-44.0.3/src/rust/src/error.rs
--- old/cryptography-44.0.2/src/rust/src/error.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/error.rs 2025-05-02
21:28:28.000000000 +0200
@@ -116,7 +116,7 @@
"Could not deserialize key data. The data may be in an
incorrect format, it may be encrypted with an unsupported algorithm, or it may
be an unsupported key type (e.g. EC curves with explicit parameters). Details:
{asn1_error}",
)
}
- CryptographyError::Py(py_error) => write!(f, "{}", py_error),
+ CryptographyError::Py(py_error) => write!(f, "{py_error}"),
CryptographyError::OpenSSL(error_stack) => {
write!(
f,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/lib.rs
new/cryptography-44.0.3/src/rust/src/lib.rs
--- old/cryptography-44.0.2/src/rust/src/lib.rs 2025-03-02 00:53:51.000000000
+0100
+++ new/cryptography-44.0.3/src/rust/src/lib.rs 2025-05-02 21:28:28.000000000
+0200
@@ -6,11 +6,13 @@
#![allow(unknown_lints, non_local_definitions, clippy::result_large_err)]
#[cfg(CRYPTOGRAPHY_OPENSSL_300_OR_GREATER)]
-use crate::error::CryptographyResult;
+use std::env;
+
#[cfg(CRYPTOGRAPHY_OPENSSL_300_OR_GREATER)]
use openssl::provider;
+
#[cfg(CRYPTOGRAPHY_OPENSSL_300_OR_GREATER)]
-use std::env;
+use crate::error::CryptographyResult;
mod asn1;
mod backend;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/oid.rs
new/cryptography-44.0.3/src/rust/src/oid.rs
--- old/cryptography-44.0.2/src/rust/src/oid.rs 2025-03-02 00:53:51.000000000
+0100
+++ new/cryptography-44.0.3/src/rust/src/oid.rs 2025-05-02 21:28:28.000000000
+0200
@@ -2,12 +2,14 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
-use crate::error::CryptographyResult;
-use crate::types;
-use pyo3::types::PyAnyMethods;
use std::collections::hash_map::DefaultHasher;
use std::hash::{Hash, Hasher};
+use pyo3::types::PyAnyMethods;
+
+use crate::error::CryptographyResult;
+use crate::types;
+
#[pyo3::pyclass(frozen, module = "cryptography.hazmat.bindings._rust")]
pub(crate) struct ObjectIdentifier {
pub(crate) oid: asn1::ObjectIdentifier,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/pkcs12.rs
new/cryptography-44.0.3/src/rust/src/pkcs12.rs
--- old/cryptography-44.0.2/src/rust/src/pkcs12.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/pkcs12.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,17 +2,19 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
+use std::collections::hash_map::DefaultHasher;
+use std::hash::{Hash, Hasher};
+
+use cryptography_x509::common::Utf8StoredBMPString;
+use pyo3::types::{PyAnyMethods, PyBytesMethods, PyListMethods};
+use pyo3::IntoPyObject;
+
use crate::backend::{ciphers, hashes, hmac, kdf, keys};
use crate::buf::CffiBuf;
use crate::error::{CryptographyError, CryptographyResult};
use crate::padding::PKCS7PaddingContext;
use crate::x509::certificate::Certificate;
use crate::{types, x509};
-use cryptography_x509::common::Utf8StoredBMPString;
-use pyo3::types::{PyAnyMethods, PyBytesMethods, PyListMethods};
-use pyo3::IntoPyObject;
-use std::collections::hash_map::DefaultHasher;
-use std::hash::{Hash, Hasher};
#[pyo3::pyclass(frozen)]
struct PKCS12Certificate {
@@ -386,14 +388,14 @@
) -> CryptographyResult<cryptography_x509::pkcs12::SafeBag<'a>> {
Ok(cryptography_x509::pkcs12::SafeBag {
_bag_id: asn1::DefinedByMarker::marker(),
- bag_value:
asn1::Explicit::new(cryptography_x509::pkcs12::BagValue::CertBag(
+ bag_value:
asn1::Explicit::new(cryptography_x509::pkcs12::BagValue::CertBag(Box::new(
cryptography_x509::pkcs12::CertBag {
_cert_id: asn1::DefinedByMarker::marker(),
cert_value:
asn1::Explicit::new(cryptography_x509::pkcs12::CertType::X509(
asn1::OctetStringEncoded::new(cert.raw.borrow_dependent().clone()),
)),
},
- )),
+ ))),
attributes: pkcs12_attributes(friendly_name, local_key_id)?,
})
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/pkcs7.rs
new/cryptography-44.0.3/src/rust/src/pkcs7.rs
--- old/cryptography-44.0.2/src/rust/src/pkcs7.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/pkcs7.rs 2025-05-02
21:28:28.000000000 +0200
@@ -686,7 +686,7 @@
let nid_string = nid.map_or("empty".to_string(), |n|
n.as_raw().to_string());
return Err(CryptographyError::from(
exceptions::UnsupportedAlgorithm::new_err((
- format!("Only basic signed structures are currently supported.
NID for this data was {}", nid_string),
+ format!("Only basic signed structures are currently supported.
NID for this data was {nid_string}"),
exceptions::Reasons::UNSUPPORTED_SERIALIZATION,
)),
));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/test_support.rs
new/cryptography-44.0.3/src/rust/src/test_support.rs
--- old/cryptography-44.0.2/src/rust/src/test_support.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/test_support.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,6 +2,13 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
+use asn1::SimpleAsn1Readable;
+use cryptography_x509::certificate::Certificate;
+use cryptography_x509::common::Time;
+use cryptography_x509::name::Name;
+#[cfg(not(CRYPTOGRAPHY_IS_BORINGSSL))]
+use pyo3::prelude::PyAnyMethods;
+
#[cfg(not(CRYPTOGRAPHY_IS_BORINGSSL))]
use crate::buf::CffiBuf;
use crate::error::CryptographyResult;
@@ -9,12 +16,6 @@
use crate::types;
#[cfg(not(CRYPTOGRAPHY_IS_BORINGSSL))]
use crate::x509::certificate::Certificate as PyCertificate;
-use asn1::SimpleAsn1Readable;
-use cryptography_x509::certificate::Certificate;
-use cryptography_x509::common::Time;
-use cryptography_x509::name::Name;
-#[cfg(not(CRYPTOGRAPHY_IS_BORINGSSL))]
-use pyo3::prelude::PyAnyMethods;
#[pyo3::pyclass(frozen, module =
"cryptography.hazmat.bindings._rust.test_support")]
struct TestCertificate {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/x509/certificate.rs
new/cryptography-44.0.3/src/rust/src/x509/certificate.rs
--- old/cryptography-44.0.2/src/rust/src/x509/certificate.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/x509/certificate.rs 2025-05-02
21:28:28.000000000 +0200
@@ -6,16 +6,15 @@
use std::hash::{Hash, Hasher};
use cryptography_x509::certificate::Certificate as RawCertificate;
-use cryptography_x509::common::Asn1Read;
-use cryptography_x509::common::{AlgorithmParameters, Asn1ReadableOrWritable};
+use cryptography_x509::common::{AlgorithmParameters, Asn1Read,
Asn1ReadableOrWritable};
use cryptography_x509::extensions::{
Admission, Admissions, AuthorityKeyIdentifier, BasicConstraints,
DisplayText,
DistributionPoint, DistributionPointName, DuplicateExtensionsError,
ExtendedKeyUsage,
- IssuerAlternativeName, KeyUsage, MSCertificateTemplate, NameConstraints,
NamingAuthority,
- PolicyConstraints, PolicyInformation, PolicyQualifierInfo, ProfessionInfo,
Qualifier,
- RawExtensions, SequenceOfAccessDescriptions, SequenceOfSubtrees,
UserNotice,
+ Extension, IssuerAlternativeName, KeyUsage, MSCertificateTemplate,
NameConstraints,
+ NamingAuthority, PolicyConstraints, PolicyInformation,
PolicyQualifierInfo, ProfessionInfo,
+ Qualifier, RawExtensions, SequenceOfAccessDescriptions, SequenceOfSubtrees,
+ SubjectAlternativeName, UserNotice,
};
-use cryptography_x509::extensions::{Extension, SubjectAlternativeName};
use cryptography_x509::{common, oid};
use cryptography_x509_verification::ops::CryptoOps;
use pyo3::types::{PyAnyMethods, PyListMethods};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/x509/common.rs
new/cryptography-44.0.3/src/rust/src/x509/common.rs
--- old/cryptography-44.0.2/src/rust/src/x509/common.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/x509/common.rs 2025-05-02
21:28:28.000000000 +0200
@@ -7,8 +7,7 @@
AccessDescription, DuplicateExtensionsError, Extension, Extensions,
RawExtensions,
};
use cryptography_x509::name::{GeneralName, Name, NameReadable, OtherName,
UnvalidatedIA5String};
-use pyo3::types::IntoPyDict;
-use pyo3::types::{PyAnyMethods, PyListMethods};
+use pyo3::types::{IntoPyDict, PyAnyMethods, PyListMethods};
use crate::asn1::{oid_to_py_oid, py_oid_to_oid};
use crate::error::{CryptographyError, CryptographyResult};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/x509/crl.rs
new/cryptography-44.0.3/src/rust/src/x509/crl.rs
--- old/cryptography-44.0.2/src/rust/src/x509/crl.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/x509/crl.rs 2025-05-02
21:28:28.000000000 +0200
@@ -4,15 +4,13 @@
use std::sync::Arc;
-use cryptography_x509::extensions::{Extension, IssuerAlternativeName};
-use cryptography_x509::{
- common::{self, Asn1Read},
- crl::{
- self, CertificateRevocationList as RawCertificateRevocationList,
- RevokedCertificate as RawRevokedCertificate,
- },
- name, oid,
+use cryptography_x509::common::{self, Asn1Read};
+use cryptography_x509::crl::{
+ self, CertificateRevocationList as RawCertificateRevocationList,
+ RevokedCertificate as RawRevokedCertificate,
};
+use cryptography_x509::extensions::{Extension, IssuerAlternativeName};
+use cryptography_x509::{name, oid};
use pyo3::types::{PyAnyMethods, PyListMethods, PySliceMethods};
use crate::asn1::{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/x509/csr.rs
new/cryptography-44.0.3/src/rust/src/x509/csr.rs
--- old/cryptography-44.0.2/src/rust/src/x509/csr.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/x509/csr.rs 2025-05-02
21:28:28.000000000 +0200
@@ -13,7 +13,8 @@
use crate::asn1::{encode_der_data, oid_to_py_oid, py_oid_to_oid};
use crate::backend::keys;
use crate::error::{CryptographyError, CryptographyResult};
-use crate::x509::{certificate, common::cstr_from_literal, sign};
+use crate::x509::common::cstr_from_literal;
+use crate::x509::{certificate, sign};
use crate::{exceptions, types, x509};
self_cell::self_cell!(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/x509/extensions.rs
new/cryptography-44.0.3/src/rust/src/x509/extensions.rs
--- old/cryptography-44.0.2/src/rust/src/x509/extensions.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/x509/extensions.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,14 +2,15 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
-use cryptography_x509::{common::Asn1Write, crl, extensions, oid};
+use cryptography_x509::common::Asn1Write;
+use cryptography_x509::{crl, extensions, oid};
+use pyo3::pybacked::PyBackedStr;
+use pyo3::types::PyAnyMethods;
use crate::asn1::{py_oid_to_oid, py_uint_to_big_endian_bytes};
use crate::error::{CryptographyError, CryptographyResult};
use crate::x509::{certificate, sct};
use crate::{types, x509};
-use pyo3::pybacked::PyBackedStr;
-use pyo3::types::PyAnyMethods;
fn encode_general_subtrees<'a>(
py: pyo3::Python<'_>,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/x509/ocsp_req.rs
new/cryptography-44.0.3/src/rust/src/x509/ocsp_req.rs
--- old/cryptography-44.0.2/src/rust/src/x509/ocsp_req.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/x509/ocsp_req.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,11 +2,8 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
-use cryptography_x509::{
- common,
- ocsp_req::{self, OCSPRequest as RawOCSPRequest},
- oid,
-};
+use cryptography_x509::ocsp_req::{self, OCSPRequest as RawOCSPRequest};
+use cryptography_x509::{common, oid};
use pyo3::types::{PyAnyMethods, PyListMethods};
use crate::asn1::{big_byte_slice_to_py_int, oid_to_py_oid,
py_uint_to_big_endian_bytes};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/x509/ocsp_resp.rs
new/cryptography-44.0.3/src/rust/src/x509/ocsp_resp.rs
--- old/cryptography-44.0.2/src/rust/src/x509/ocsp_resp.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/x509/ocsp_resp.rs 2025-05-02
21:28:28.000000000 +0200
@@ -4,12 +4,10 @@
use std::sync::Arc;
-use cryptography_x509::ocsp_resp::SingleResponse;
-use cryptography_x509::{
- common,
- ocsp_resp::{self, OCSPResponse as RawOCSPResponse, SingleResponse as
RawSingleResponse},
- oid,
+use cryptography_x509::ocsp_resp::{
+ self, OCSPResponse as RawOCSPResponse, SingleResponse, SingleResponse as
RawSingleResponse,
};
+use cryptography_x509::{common, oid};
use pyo3::types::{PyAnyMethods, PyBytesMethods, PyListMethods};
use crate::asn1::{big_byte_slice_to_py_int, oid_to_py_oid};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/src/rust/src/x509/verify.rs
new/cryptography-44.0.3/src/rust/src/x509/verify.rs
--- old/cryptography-44.0.2/src/rust/src/x509/verify.rs 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/src/rust/src/x509/verify.rs 2025-05-02
21:28:28.000000000 +0200
@@ -2,17 +2,16 @@
// 2.0, and the BSD License. See the LICENSE file in the root of this
repository
// for complete details.
-use cryptography_x509::{
- certificate::Certificate, extensions::SubjectAlternativeName,
oid::SUBJECT_ALTERNATIVE_NAME_OID,
-};
-use cryptography_x509_verification::{
- ops::{CryptoOps, VerificationCertificate},
- policy::{Policy, Subject},
- trust_store::Store,
- types::{DNSName, IPAddress},
-};
+use cryptography_x509::certificate::Certificate;
+use cryptography_x509::extensions::SubjectAlternativeName;
+use cryptography_x509::oid::SUBJECT_ALTERNATIVE_NAME_OID;
+use cryptography_x509_verification::ops::{CryptoOps, VerificationCertificate};
+use cryptography_x509_verification::policy::{Policy, Subject};
+use cryptography_x509_verification::trust_store::Store;
+use cryptography_x509_verification::types::{DNSName, IPAddress};
use pyo3::types::{PyAnyMethods, PyListMethods};
+use super::parse_general_names;
use crate::backend::keys;
use crate::error::{CryptographyError, CryptographyResult};
use crate::types;
@@ -20,8 +19,6 @@
use crate::x509::common::{datetime_now, datetime_to_py, py_to_datetime};
use crate::x509::sign;
-use super::parse_general_names;
-
pub(crate) struct PyCryptoOps {}
impl CryptoOps for PyCryptoOps {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/tests/hazmat/backends/test_openssl.py
new/cryptography-44.0.3/tests/hazmat/backends/test_openssl.py
--- old/cryptography-44.0.2/tests/hazmat/backends/test_openssl.py
2025-03-02 00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/tests/hazmat/backends/test_openssl.py
2025-05-02 21:28:28.000000000 +0200
@@ -126,7 +126,10 @@
def test_rsa_padding_supported_pss(self):
assert (
backend.rsa_padding_supported(
- padding.PSS(mgf=padding.MGF1(hashes.SHA1()), salt_length=0)
+ padding.PSS(
+ mgf=padding.MGF1(hashes.SHA256()),
+ salt_length=padding.PSS.DIGEST_LENGTH,
+ )
)
is True
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cryptography-44.0.2/tests/hazmat/primitives/test_rsa.py
new/cryptography-44.0.3/tests/hazmat/primitives/test_rsa.py
--- old/cryptography-44.0.2/tests/hazmat/primitives/test_rsa.py 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/tests/hazmat/primitives/test_rsa.py 2025-05-02
21:28:28.000000000 +0200
@@ -530,11 +530,20 @@
hashes.SHA1(),
)
+ @pytest.mark.supported(
+ only_if=lambda backend: backend.rsa_padding_supported(
+ padding.PSS(
+ mgf=padding.MGF1(hashes.SHA256()),
+ salt_length=padding.PSS.MAX_LENGTH,
+ )
+ ),
+ skip_message="Does not support PSS with these parameters.",
+ )
@pytest.mark.parametrize(
"hash_alg",
[hashes.SHA224(), hashes.SHA256(), hashes.SHA384(), hashes.SHA512()],
)
- def test_pss_signing_sha2(self, rsa_key_2048, hash_alg, backend):
+ def test_pss_sha2_max_length(self, rsa_key_2048, hash_alg, backend):
_skip_pss_hash_algorithm_unsupported(backend, hash_alg)
private_key = rsa_key_2048
public_key = private_key.public_key()
@@ -1067,7 +1076,7 @@
salt_length=padding.PSS.AUTO,
)
),
- skip_message="Does not support PSS.",
+ skip_message="Does not support PSS with these parameters.",
)
def test_pss_verify_auto_salt_length(
self, rsa_key_2048: rsa.RSAPrivateKey, backend
@@ -1207,7 +1216,7 @@
public_key = private_key.public_key()
pss_padding = padding.PSS(
mgf=padding.MGF1(algorithm=hashes.SHA256()),
- salt_length=padding.PSS.MAX_LENGTH,
+ salt_length=padding.PSS.DIGEST_LENGTH,
)
signature = private_key.sign(b"sign me", pss_padding, hashes.SHA256())
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/tests/wycheproof/test_rsa.py
new/cryptography-44.0.3/tests/wycheproof/test_rsa.py
--- old/cryptography-44.0.2/tests/wycheproof/test_rsa.py 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/tests/wycheproof/test_rsa.py 2025-05-02
21:28:28.000000000 +0200
@@ -138,18 +138,7 @@
)
def test_rsa_pss_signature(backend, wycheproof):
digest = _DIGESTS[wycheproof.testgroup["sha"]]
- if backend._fips_enabled and isinstance(digest, hashes.SHA1):
- pytest.skip("Invalid params for FIPS. SHA1 is disallowed")
-
- key = wycheproof.cache_value_to_group(
- "cached_key",
- lambda: serialization.load_der_public_key(
- binascii.unhexlify(wycheproof.testgroup["keyDer"]),
- ),
- )
- assert isinstance(key, rsa.RSAPublicKey)
mgf_digest = _DIGESTS[wycheproof.testgroup["mgfSha"]]
-
if digest is None or mgf_digest is None:
pytest.skip(
"PSS with digest={} and MGF digest={} not supported".format(
@@ -157,6 +146,23 @@
wycheproof.testgroup["mgfSha"],
)
)
+ if backend._fips_enabled and (
+ isinstance(digest, hashes.SHA1)
+ or isinstance(mgf_digest, hashes.SHA1)
+ # FIPS 186-4 only allows salt length == digest length for PSS
+ or wycheproof.testgroup["sLen"] != mgf_digest.digest_size
+ # inner MGF1 hash must match outer hash
+ or wycheproof.testgroup["sha"] != wycheproof.testgroup["mgfSha"]
+ ):
+ pytest.skip("Invalid params for FIPS")
+
+ key = wycheproof.cache_value_to_group(
+ "cached_key",
+ lambda: serialization.load_der_public_key(
+ binascii.unhexlify(wycheproof.testgroup["keyDer"]),
+ ),
+ )
+ assert isinstance(key, rsa.RSAPublicKey)
if wycheproof.valid or wycheproof.acceptable:
key.verify(
@@ -202,6 +208,11 @@
"rsa_oaep_misc_test.json",
)
def test_rsa_oaep_encryption(backend, wycheproof):
+ if backend._fips_enabled and wycheproof.has_flag("SmallIntegerCiphertext"):
+ pytest.skip(
+ "Small integer ciphertexts are rejected in OpenSSL 3.5 FIPS"
+ )
+
digest = _DIGESTS[wycheproof.testgroup["sha"]]
mgf_digest = _DIGESTS[wycheproof.testgroup["mgfSha"]]
assert digest is not None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/tests/wycheproof/test_x25519.py
new/cryptography-44.0.3/tests/wycheproof/test_x25519.py
--- old/cryptography-44.0.2/tests/wycheproof/test_x25519.py 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/tests/wycheproof/test_x25519.py 2025-05-02
21:28:28.000000000 +0200
@@ -20,10 +20,8 @@
)
@wycheproof_tests("x25519_test.json")
def test_x25519(backend, wycheproof):
- assert set(wycheproof.testgroup.items()) == {
- ("curve", "curve25519"),
- ("type", "XdhComp"),
- }
+ assert wycheproof.testgroup["curve"] == "curve25519"
+ assert wycheproof.testgroup["type"] == "XdhComp"
private_key = X25519PrivateKey.from_private_bytes(
binascii.unhexlify(wycheproof.testcase["private"])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/tests/wycheproof/test_x448.py
new/cryptography-44.0.3/tests/wycheproof/test_x448.py
--- old/cryptography-44.0.2/tests/wycheproof/test_x448.py 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/tests/wycheproof/test_x448.py 2025-05-02
21:28:28.000000000 +0200
@@ -20,10 +20,8 @@
)
@wycheproof_tests("x448_test.json")
def test_x448(backend, wycheproof):
- assert set(wycheproof.testgroup.items()) == {
- ("curve", "curve448"),
- ("type", "XdhComp"),
- }
+ assert wycheproof.testgroup["curve"] == "curve448"
+ assert wycheproof.testgroup["type"] == "XdhComp"
private_key = X448PrivateKey.from_private_bytes(
binascii.unhexlify(wycheproof.testcase["private"])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cryptography-44.0.2/tests/x509/test_x509.py
new/cryptography-44.0.3/tests/x509/test_x509.py
--- old/cryptography-44.0.2/tests/x509/test_x509.py 2025-03-02
00:53:51.000000000 +0100
+++ new/cryptography-44.0.3/tests/x509/test_x509.py 2025-05-02
21:28:28.000000000 +0200
@@ -852,7 +852,7 @@
assert isinstance(pss, padding.PSS)
assert isinstance(pss._mgf, padding.MGF1)
assert isinstance(pss._mgf._algorithm, hashes.SHA256)
- assert pss._salt_length == 222
+ assert pss._salt_length == 32
assert isinstance(cert.signature_hash_algorithm, hashes.SHA256)
pub_key.verify(
cert.signature,
@@ -2855,6 +2855,11 @@
computed_len,
backend,
):
+ pss = padding.PSS(
+ mgf=padding.MGF1(hashes.SHA256()), salt_length=padding_len
+ )
+ if not backend.rsa_padding_supported(pss):
+ pytest.skip("PSS padding with these parameters not supported")
builder = (
x509.CertificateBuilder()
.subject_name(
@@ -2868,9 +2873,6 @@
.not_valid_before(datetime.datetime(2020, 1, 1))
.not_valid_after(datetime.datetime(2038, 1, 1))
)
- pss = padding.PSS(
- mgf=padding.MGF1(hashes.SHA256()), salt_length=padding_len
- )
cert = builder.sign(rsa_key_2048, hashes.SHA256(), rsa_padding=pss)
assert isinstance(cert.signature_algorithm_parameters, padding.PSS)
assert cert.signature_algorithm_parameters._salt_length == computed_len
@@ -5286,6 +5288,12 @@
computed_len,
backend,
):
+ pss = padding.PSS(
+ mgf=padding.MGF1(hashes.SHA256()), salt_length=padding_len
+ )
+ if not backend.rsa_padding_supported(pss):
+ pytest.skip("PSS padding with these parameters not supported")
+
builder = x509.CertificateSigningRequestBuilder().subject_name(
x509.Name([x509.NameAttribute(NameOID.COUNTRY_NAME, "US")])
)
++++++ no-pytest_benchmark.patch ++++++
--- /var/tmp/diff_new_pack.489Zyw/_old 2025-05-13 20:12:08.883655040 +0200
+++ /var/tmp/diff_new_pack.489Zyw/_new 2025-05-13 20:12:08.915656383 +0200
@@ -1,10 +1,10 @@
-Index: cryptography-44.0.2/pyproject.toml
+Index: cryptography-44.0.3/pyproject.toml
===================================================================
---- cryptography-44.0.2.orig/pyproject.toml
-+++ cryptography-44.0.2/pyproject.toml
+--- cryptography-44.0.3.orig/pyproject.toml
++++ cryptography-44.0.3/pyproject.toml
@@ -67,8 +67,6 @@ nox = ["nox >=2024.04.15", "nox[uv] >=20
test = [
- "cryptography_vectors==44.0.2",
+ "cryptography_vectors==44.0.3",
"pytest >=7.4.0",
- "pytest-benchmark >=4.0",
- "pytest-cov >=2.10.1",
@@ -54,10 +54,10 @@
[tool.ruff]
line-length = 79
-Index: cryptography-44.0.2/tests/bench/test_aead.py
+Index: cryptography-44.0.3/tests/bench/test_aead.py
===================================================================
---- cryptography-44.0.2.orig/tests/bench/test_aead.py
-+++ cryptography-44.0.2/tests/bench/test_aead.py
+--- cryptography-44.0.3.orig/tests/bench/test_aead.py
++++ cryptography-44.0.3/tests/bench/test_aead.py
@@ -26,84 +26,84 @@ def _aead_supported(cls):
not _aead_supported(ChaCha20Poly1305),
reason="Requires OpenSSL with ChaCha20Poly1305 support",
@@ -163,10 +163,10 @@
ct = aes.encrypt(b"\x00" * 12, b"hello world plaintext", None)
- benchmark(aes.decrypt, b"\x00" * 12, ct, None)
+ aes.decrypt(b"\x00" * 12, ct, None)
-Index: cryptography-44.0.2/tests/bench/test_ec_load.py
+Index: cryptography-44.0.3/tests/bench/test_ec_load.py
===================================================================
---- cryptography-44.0.2.orig/tests/bench/test_ec_load.py
-+++ cryptography-44.0.2/tests/bench/test_ec_load.py
+--- cryptography-44.0.3.orig/tests/bench/test_ec_load.py
++++ cryptography-44.0.3/tests/bench/test_ec_load.py
@@ -5,9 +5,9 @@
from ..hazmat.primitives.fixtures_ec import EC_KEY_SECP256R1
@@ -181,10 +181,10 @@
- benchmark(EC_KEY_SECP256R1.private_key)
+def test_load_ec_private_numbers():
+ EC_KEY_SECP256R1.private_key()
-Index: cryptography-44.0.2/tests/bench/test_hashes.py
+Index: cryptography-44.0.3/tests/bench/test_hashes.py
===================================================================
---- cryptography-44.0.2.orig/tests/bench/test_hashes.py
-+++ cryptography-44.0.2/tests/bench/test_hashes.py
+--- cryptography-44.0.3.orig/tests/bench/test_hashes.py
++++ cryptography-44.0.3/tests/bench/test_hashes.py
@@ -5,10 +5,10 @@
from cryptography.hazmat.primitives import hashes
@@ -198,10 +198,10 @@
- benchmark(bench)
+ bench()
-Index: cryptography-44.0.2/tests/bench/test_hmac.py
+Index: cryptography-44.0.3/tests/bench/test_hmac.py
===================================================================
---- cryptography-44.0.2.orig/tests/bench/test_hmac.py
-+++ cryptography-44.0.2/tests/bench/test_hmac.py
+--- cryptography-44.0.3.orig/tests/bench/test_hmac.py
++++ cryptography-44.0.3/tests/bench/test_hmac.py
@@ -5,10 +5,10 @@
from cryptography.hazmat.primitives import hashes, hmac
@@ -215,10 +215,10 @@
- benchmark(bench)
+ bench()
-Index: cryptography-44.0.2/tests/bench/test_x509.py
+Index: cryptography-44.0.3/tests/bench/test_x509.py
===================================================================
---- cryptography-44.0.2.orig/tests/bench/test_x509.py
-+++ cryptography-44.0.2/tests/bench/test_x509.py
+--- cryptography-44.0.3.orig/tests/bench/test_x509.py
++++ cryptography-44.0.3/tests/bench/test_x509.py
@@ -13,40 +13,40 @@ from cryptography import x509
from ..utils import load_vectors_from_file
++++++ vendor.tar.zst ++++++
++++ 548092 lines of diff (skipped)