Merge remote-tracking branch 'refs/remotes/origin/master'
This commit is contained in:
commit
28178f39cb
@ -67,7 +67,12 @@ void Server::start()
|
|||||||
qWarning() << "Unable to open private key file.";
|
qWarning() << "Unable to open private key file.";
|
||||||
}
|
}
|
||||||
else {
|
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();
|
keyFile.close();
|
||||||
|
|
||||||
QFile certFile(certificatePath);
|
QFile certFile(certificatePath);
|
||||||
@ -75,7 +80,7 @@ void Server::start()
|
|||||||
qWarning() << "Unable to open certificate file.";
|
qWarning() << "Unable to open certificate file.";
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
QSslCertificate certificate(&certFile);
|
QList<QSslCertificate> certs = QSslCertificate::fromData(certFile.readAll());
|
||||||
certFile.close();
|
certFile.close();
|
||||||
|
|
||||||
QFile caFile(caCertificatePath);
|
QFile caFile(caCertificatePath);
|
||||||
@ -86,7 +91,11 @@ void Server::start()
|
|||||||
}
|
}
|
||||||
|
|
||||||
sslConfig.setPrivateKey(privateKey);
|
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);
|
secure_server->setSslConfiguration(sslConfig);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user