aboutsummaryrefslogtreecommitdiffstats
path: root/modules/extra/ssl_openssl.cpp
diff options
context:
space:
mode:
authorGravatar Sadie Powell2025-11-04 01:03:14 +0000
committerGravatar Sadie Powell2025-11-04 01:03:14 +0000
commit6df70e253869fecadbb82f832f8f47653e044985 (patch)
tree47e9c127ab87257eaf883ce757a797069bc00052 /modules/extra/ssl_openssl.cpp
parentMerge branch 'insp4' into master. (diff)
parentOnly cache the package directory on Windows. (diff)
downloadinspircd++-6df70e253869fecadbb82f832f8f47653e044985.tar.gz
inspircd++-6df70e253869fecadbb82f832f8f47653e044985.tar.bz2
inspircd++-6df70e253869fecadbb82f832f8f47653e044985.zip
Merge branch 'insp4' into master.
Diffstat (limited to 'modules/extra/ssl_openssl.cpp')
-rw-r--r--modules/extra/ssl_openssl.cpp12
1 files changed, 5 insertions, 7 deletions
diff --git a/modules/extra/ssl_openssl.cpp b/modules/extra/ssl_openssl.cpp
index a4c5a5274..38141cce8 100644
--- a/modules/extra/ssl_openssl.cpp
+++ b/modules/extra/ssl_openssl.cpp
@@ -545,14 +545,10 @@ private:
void VerifyCertificate()
{
- X509* cert;
auto* certinfo = new ssl_cert();
this->certificate = certinfo;
- unsigned int n;
- unsigned char md[EVP_MAX_MD_SIZE];
-
- cert = SSL_get_peer_certificate(sess);
+ auto* cert = SSL_get_peer_certificate(sess);
if (!cert)
{
certinfo->error = "Could not get peer certificate: "+std::string(get_error());
@@ -593,15 +589,17 @@ private:
GetDNString(X509_get_subject_name(cert), certinfo->dn);
GetDNString(X509_get_issuer_name(cert), certinfo->issuer);
+ unsigned int mdlen;
+ unsigned char md[EVP_MAX_MD_SIZE];
for (const auto* digest : GetProfile().GetDigests())
{
- if (!X509_digest(cert, digest, md, &n))
+ if (!X509_digest(cert, digest, md, &mdlen))
{
certinfo->error = "Out of memory generating fingerprint";
}
else
{
- certinfo->fingerprints.push_back(Hex::Encode(md, n));
+ certinfo->fingerprints.push_back(Hex::Encode(md, mdlen));
}
}