X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fsslserver.cpp;h=7fee3ca59dd98e73f9251f6291f91548d419e60e;hp=570957da99c22cba0a3f45ba286ebca2db34bb63;hb=4faeafb743766b345d5cadc5289840a981413853;hpb=c45d822706b8e638b65bc8b57b18aaf0555d6e05 diff --git a/src/core/sslserver.cpp b/src/core/sslserver.cpp index 570957da..7fee3ca5 100644 --- a/src/core/sslserver.cpp +++ b/src/core/sslserver.cpp @@ -62,12 +62,20 @@ void SslServer::incomingConnection(int socketDescriptor) { bool SslServer::setCertificate(const QString &path) { _certIsValid = false; + if (path.isNull()) { + return false; + } + QFile certFile(path); + if (! certFile.exists()) { + qWarning() << "SslServer: Certificate file" << qPrintable(path) << "does not exist"; + return false; + } + certFile.open(QIODevice::ReadOnly); _cert = QSslCertificate(&certFile); - certFile.close(); - certFile.open(QIODevice::ReadOnly); + certFile.reset(); _key = QSslKey(&certFile, QSsl::Rsa); certFile.close();