From f161f67a2c3902e0254610b4c98654eddb439b96 Mon Sep 17 00:00:00 2001 From: gor_down Date: Mon, 23 Jun 2025 19:05:11 -0300 Subject: [PATCH] AHORA BANCANDO FULLCHAIN Y CURVA ELIPTICA --- src/server.cpp | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/server.cpp b/src/server.cpp index 40a0e3c..1b22f96 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -67,7 +67,12 @@ void Server::start() qWarning() << "Unable to open private key file."; } else { - QSslKey privateKey(&keyFile, QSsl::Rsa); + QSslKey privateKey; + privateKey = QSslKey(&keyFile, QSsl::Ec); + if (privateKey.isNull()) { + keyFile.reset(); + privateKey = QSslKey(&keyFile, QSsl::Rsa); + } keyFile.close(); QFile certFile(certificatePath); @@ -75,7 +80,7 @@ void Server::start() qWarning() << "Unable to open certificate file."; } else { - QSslCertificate certificate(&certFile); + QList certs = QSslCertificate::fromData(certFile.readAll()); certFile.close(); QFile caFile(caCertificatePath); @@ -86,7 +91,11 @@ void Server::start() } sslConfig.setPrivateKey(privateKey); - sslConfig.setLocalCertificate(certificate); + if (!certs.isEmpty()) { + sslConfig.setLocalCertificate(certs.first()); + if (certs.size() > 1) + sslConfig.setCaCertificates(certs.mid(1)); + } secure_server->setSslConfiguration(sslConfig); } }