Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mumble-voip/mumble.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/murmur/Cert.cpp2
-rw-r--r--src/murmur/Server.cpp2
-rw-r--r--src/murmur/Server.h11
3 files changed, 12 insertions, 3 deletions
diff --git a/src/murmur/Cert.cpp b/src/murmur/Cert.cpp
index 004c11744..1be63a934 100644
--- a/src/murmur/Cert.cpp
+++ b/src/murmur/Cert.cpp
@@ -115,7 +115,7 @@ void Server::initializeCert() {
ql.removeAt(i);
}
}
- qlCA = ql;
+ qlIntermediates = ql;
}
#if defined(USE_QSSLDIFFIEHELLMANPARAMETERS)
diff --git a/src/murmur/Server.cpp b/src/murmur/Server.cpp
index 27f90705c..4178dfab6 100644
--- a/src/murmur/Server.cpp
+++ b/src/murmur/Server.cpp
@@ -1198,7 +1198,7 @@ void Server::newClient() {
sock->setPrivateKey(qskKey);
sock->setLocalCertificate(qscCert);
sock->addCaCertificate(qscCert);
- sock->addCaCertificates(qlCA);
+ sock->addCaCertificates(qlIntermediates);
#if defined(USE_QSSLDIFFIEHELLMANPARAMETERS)
QSslConfiguration cfg = sock->sslConfiguration();
diff --git a/src/murmur/Server.h b/src/murmur/Server.h
index 0d4d9ef73..f3d51c522 100644
--- a/src/murmur/Server.h
+++ b/src/murmur/Server.h
@@ -131,9 +131,18 @@ class Server : public QThread {
QVariant qvSuggestPositional;
QVariant qvSuggestPushToTalk;
- QList<QSslCertificate> qlCA;
QSslCertificate qscCert;
QSslKey qskKey;
+
+ /// qlIntermediates contains the certificates
+ /// from this virtual server's certificate PEM
+ // bundle that do not match the virtual server's
+ // private key.
+ ///
+ /// Simply put: it contains any certificates
+ /// that aren't the main certificate, or "leaf"
+ /// certificate.
+ QList<QSslCertificate> qlIntermediates;
#if defined(USE_QSSLDIFFIEHELLMANPARAMETERS)
QSslDiffieHellmanParameters qsdhpDHParams;
#endif