projects
/
quassel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Reset certFile instead of reopening in SslServer::setCertificate.
[quassel.git]
/
src
/
core
/
sslserver.cpp
diff --git
a/src/core/sslserver.cpp
b/src/core/sslserver.cpp
index
570957d
..
7fee3ca
100644
(file)
--- 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;
bool SslServer::setCertificate(const QString &path) {
_certIsValid = false;
+ if (path.isNull()) {
+ return false;
+ }
+
QFile certFile(path);
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.open(QIODevice::ReadOnly);
_cert = QSslCertificate(&certFile);
- certFile.close();
- certFile.
open(QIODevice::ReadOnly
);
+ certFile.
reset(
);
_key = QSslKey(&certFile, QSsl::Rsa);
certFile.close();
_key = QSslKey(&certFile, QSsl::Rsa);
certFile.close();