https://github.com/aria2/aria2/pull/2403 From fee9e082970d94affc72b2dd2d12638d4c16b80b Mon Sep 17 00:00:00 2001 From: Michael Cho Date: Tue, 6 Oct 2026 14:51:19 -0400 Subject: [PATCH] Add support for OpenSSL 4 --- src/LibsslTLSSession.cc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/LibsslTLSSession.cc b/src/LibsslTLSSession.cc index 697029c37d..1f16ba6c04 100644 --- a/src/LibsslTLSSession.cc +++ b/src/LibsslTLSSession.cc @@ -279,17 +279,17 @@ int OpenSSLTLSSession::tlsConnect(const std::string& hostname, dnsNames.push_back(std::string(name, name + len)); } else if (altName->type == GEN_IPADD) { - const unsigned char* ipAddr = altName->d.iPAddress->data; + const unsigned char* ipAddr = ASN1_STRING_get0_data(altName->d.iPAddress); if (!ipAddr) { continue; } - size_t len = altName->d.iPAddress->length; + size_t len = ASN1_STRING_length(altName->d.iPAddress); ipAddrs.push_back( std::string(reinterpret_cast(ipAddr), len)); } } } - X509_NAME* subjectName = X509_get_subject_name(peerCert); + auto subjectName = X509_get_subject_name(peerCert); if (!subjectName) { handshakeErr = "could not get X509 name object from the certificate."; return TLS_ERR_ERROR; @@ -301,7 +301,7 @@ int OpenSSLTLSSession::tlsConnect(const std::string& hostname, if (lastpos == -1) { break; } - X509_NAME_ENTRY* entry = X509_NAME_get_entry(subjectName, lastpos); + auto entry = X509_NAME_get_entry(subjectName, lastpos); unsigned char* out; int outlen = ASN1_STRING_to_UTF8(&out, X509_NAME_ENTRY_get_data(entry)); if (outlen < 0) {