Use ENGINE_by_id() for any engine name that doesn't contain a dot,
assuming it's an engine ID. If the name includes a dot (e.g., a file
extension), treat it as a path to a dynamic engine module.
See #436 for discussion.
Enhanced verification logic for PKCS#7 signedData structures by introducing a dedicated `verify_pkcs7_data()` function. This update addresses compatibility with older OpenSSL versions (< 3.0.5) and ensures correct handling of detached signed content using a BIO buffer.
The change enables support for PKCS#7 inner content (RFC 2315, section 7), as per OpenSSL PR#22575.
Refactored timestamp and authenticode verification functions to reduce duplication and properly manage X509_STORE and X509_CRL structures.
Windows and MacOS are both case-insensitive, and hence the issue of wrong capitalisation may not have surfaced.
I am forming a recipe for cross-compilation for the Julia BinarBuilder environment, which uses Linux x86_64 as the host system. However, as it uses a sensitive filesystem, I hit a linking error that could only be fixed by changing the capitalization of `Ws2_32.lib` to lowercase.
More on that can be found in the pull request:
https://github.com/JuliaPackaging/Yggdrasil/pull/10950
write_pkcs12_container method raises following error message with
python-cryptography-43.0.0:
Error: module 'cryptography.hazmat.primitives.serialization' has no attribute 'pkcs12'
Explicit import of the pkcs12 module resolves the issue.