X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcore.cpp;h=d596344ca83d560d9c26fca79ac8b105d74c17a0;hp=3f49a227570de882de1934e6eb0f2a498342104e;hb=5fc6f7e2d63b45770574260afd6ce535e9548d23;hpb=358e5d557d527675c7bc62e58a4c7ad3b408897c diff --git a/src/core/core.cpp b/src/core/core.cpp index 3f49a227..d596344c 100644 --- a/src/core/core.cpp +++ b/src/core/core.cpp @@ -222,6 +222,11 @@ bool Core::init() _oidentdConfigGenerator = new OidentdConfigGenerator(this); } + + if (Quassel::isOptionSet("ident-daemon")) { + _identServer = new IdentServer(this); + } + Quassel::registerReloadHandler([]() { // Currently, only reloading SSL certificates and the sysident cache is supported if (Core::instance()) { @@ -406,6 +411,8 @@ bool Core::initStorage(const QString &backend, const QVariantMap &settings, return false; } + connect(storage.get(), SIGNAL(dbUpgradeInProgress(bool)), this, SIGNAL(dbUpgradeInProgress(bool))); + Storage::State storageState = storage->init(settings, environment, loadFromEnvironment); switch (storageState) { case Storage::NeedsSetup: @@ -663,12 +670,20 @@ bool Core::startListening() if (!success) quError() << qPrintable(tr("Could not open any network interfaces to listen on!")); + if (_identServer) { + _identServer->startListening(); + } + return success; } void Core::stopListening(const QString &reason) { + if (_identServer) { + _identServer->stopListening(reason); + } + bool wasListening = false; if (_server.isListening()) { wasListening = true;