X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcorenetwork.cpp;h=02f384223ff0f689a1b9fbad5bd3c7a08fe7f42f;hp=b43bbc29eaa65aaa83c9b785a861573e9b01efc8;hb=dd653b781619e2de71c710eafab7af6911ee89ed;hpb=f9a73e3ad8142212028a39b26ced62456e575b7a diff --git a/src/core/corenetwork.cpp b/src/core/corenetwork.cpp index b43bbc29..02f38422 100644 --- a/src/core/corenetwork.cpp +++ b/src/core/corenetwork.cpp @@ -79,8 +79,10 @@ CoreNetwork::CoreNetwork(const NetworkId &networkid, CoreSession *session) #endif connect(this, SIGNAL(newEvent(Event *)), coreSession()->eventManager(), SLOT(postEvent(Event *))); - if(Quassel::isOptionSet("oidentd")) - connect(this, SIGNAL(newSocket(const CoreIdentity*,QHostAddress,quint16,QHostAddress,quint16)), Core::instance()->oidentdConfigGenerator(), SLOT(addSocket(const CoreIdentity*,QHostAddress,quint16,QHostAddress,quint16))); + if(Quassel::isOptionSet("oidentd")) { + connect(this, SIGNAL(socketInitialized(const CoreIdentity*,QHostAddress,quint16,QHostAddress,quint16)), Core::instance()->oidentdConfigGenerator(), SLOT(addSocket(const CoreIdentity*,QHostAddress,quint16,QHostAddress,quint16)), Qt::BlockingQueuedConnection); + connect(this, SIGNAL(socketDisconnected(const CoreIdentity*,QHostAddress,quint16,QHostAddress,quint16)), Core::instance()->oidentdConfigGenerator(), SLOT(removeSocket(const CoreIdentity*,QHostAddress,quint16,QHostAddress,quint16))); + } } CoreNetwork::~CoreNetwork() { @@ -353,7 +355,6 @@ void CoreNetwork::socketError(QAbstractSocket::SocketError error) { } void CoreNetwork::socketInitialized() { -qDebug() << "connected()"; Server server = usedServer(); #ifdef HAVE_SSL if(server.useSsl && !socket.isEncrypted()) @@ -367,7 +368,7 @@ qDebug() << "connected()"; return; } - emit newSocket(identity, localAddress(), localPort(), peerAddress(), peerPort()); + emit socketInitialized(identity, localAddress(), localPort(), peerAddress(), peerPort()); // TokenBucket to avoid sending too much at once _messageDelay = 2200; // this seems to be a safe value (2.2 seconds delay) @@ -413,6 +414,7 @@ void CoreNetwork::socketDisconnected() { setConnected(false); emit disconnected(networkId()); + emit socketDisconnected(identityPtr(), localAddress(), localPort(), peerAddress(), peerPort()); if(_quitRequested) { _quitRequested = false; setConnectionState(Network::Disconnected);