if (Quassel::isOptionSet("metrics-daemon")) {
_metricsServer = new MetricsServer(this);
-#ifdef HAVE_SSL
_server.setMetricsServer(_metricsServer);
_v6server.setMetricsServer(_metricsServer);
-#endif
}
Quassel::registerReloadHandler([]() {
bool Core::sslSupported()
{
-#ifdef HAVE_SSL
- auto* sslServer = qobject_cast<SslServer*>(&instance()->_server);
- return sslServer && sslServer->isCertValid();
-#else
- return false;
-#endif
+ return instance()->_server.isCertValid() && instance()->_v6server.isCertValid();
}
bool Core::reloadCerts()
{
-#ifdef HAVE_SSL
- auto* sslServerv4 = qobject_cast<SslServer*>(&_server);
- bool retv4 = sslServerv4->reloadCerts();
-
- auto* sslServerv6 = qobject_cast<SslServer*>(&_v6server);
- bool retv6 = sslServerv6->reloadCerts();
+ bool retv4 = _server.reloadCerts();
+ bool retv6 = _v6server.reloadCerts();
return retv4 && retv6;
-#else
- // SSL not supported, don't mark configuration reload as failed
- return true;
-#endif
}
void Core::cacheSysIdent()
void Core::incomingConnection()
{
- auto* server = qobject_cast<QTcpServer*>(sender());
+ auto* server = qobject_cast<SslServer*>(sender());
Q_ASSERT(server);
while (server->hasPendingConnections()) {
- QTcpSocket* socket = server->nextPendingConnection();
+ auto socket = qobject_cast<QSslSocket*>(server->nextPendingConnection());
+ Q_ASSERT(socket);
auto* handler = new CoreAuthHandler(socket, this);
_connectingClients.insert(handler);