aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorFrode Roxrud Gill <[email protected]>2022-03-13 10:44:27 +0000
committerFrode Roxrud Gill <[email protected]>2022-03-13 10:44:27 +0000
commitcd59fabe7978d3a19749b1188dc215f24f40fde5 (patch)
tree4fa26841938bfed3a54bd79d2556c4effc69512a /src
parentFixed possible recursion crash when parsing mailbox groups. (diff)
downloadvmime-cd59fabe7978d3a19749b1188dc215f24f40fde5.tar.gz
vmime-cd59fabe7978d3a19749b1188dc215f24f40fde5.zip
Added support for digest algorithm SHA256
Diffstat (limited to 'src')
-rw-r--r--src/vmime/security/cert/X509Certificate.hpp5
-rw-r--r--src/vmime/security/cert/gnutls/X509Certificate_GnuTLS.cpp7
-rw-r--r--src/vmime/security/cert/openssl/X509Certificate_OpenSSL.cpp5
3 files changed, 14 insertions, 3 deletions
diff --git a/src/vmime/security/cert/X509Certificate.hpp b/src/vmime/security/cert/X509Certificate.hpp
index 5434b45e..c25373ee 100644
--- a/src/vmime/security/cert/X509Certificate.hpp
+++ b/src/vmime/security/cert/X509Certificate.hpp
@@ -61,8 +61,9 @@ public:
/** Supported digest algorithms (used for fingerprint). */
enum DigestAlgorithm {
- DIGEST_MD5, /**< MD5 digest */
- DIGEST_SHA1 /**< SHA1 digest */
+ DIGEST_MD5,
+ DIGEST_SHA1,
+ DIGEST_SHA256
};
diff --git a/src/vmime/security/cert/gnutls/X509Certificate_GnuTLS.cpp b/src/vmime/security/cert/gnutls/X509Certificate_GnuTLS.cpp
index 3dfa1c6f..2ac0ed88 100644
--- a/src/vmime/security/cert/gnutls/X509Certificate_GnuTLS.cpp
+++ b/src/vmime/security/cert/gnutls/X509Certificate_GnuTLS.cpp
@@ -311,10 +311,15 @@ const byteArray X509Certificate_GnuTLS::getFingerprint(const DigestAlgorithm alg
galgo = GNUTLS_DIG_MD5;
break;
+ case DIGEST_SHA256:
+
+ galgo = GNUTLS_DIG_SHA256;
+ break;
+
default:
case DIGEST_SHA1:
- galgo = GNUTLS_DIG_SHA;
+ galgo = GNUTLS_DIG_SHA1;
break;
}
diff --git a/src/vmime/security/cert/openssl/X509Certificate_OpenSSL.cpp b/src/vmime/security/cert/openssl/X509Certificate_OpenSSL.cpp
index 268a42c2..5df8703c 100644
--- a/src/vmime/security/cert/openssl/X509Certificate_OpenSSL.cpp
+++ b/src/vmime/security/cert/openssl/X509Certificate_OpenSSL.cpp
@@ -556,6 +556,11 @@ const byteArray X509Certificate_OpenSSL::getFingerprint(const DigestAlgorithm al
digest = EVP_md5();
break;
+ case DIGEST_SHA256:
+
+ digest = EVP_sha256();
+ break;
+
default:
case DIGEST_SHA1: