Implement /ignore functionality
[quassel.git] / src / client / clientauthhandler.cpp
index 7ded71d..ce7c58d 100644 (file)
@@ -288,7 +288,7 @@ void ClientAuthHandler::startRegistration()
     useSsl = _account.useSsl();
 #endif
 
-    _peer->dispatch(RegisterClient(Quassel::buildInfo().fancyVersionString, Quassel::buildInfo().commitDate, useSsl));
+    _peer->dispatch(RegisterClient(Quassel::buildInfo().fancyVersionString, Quassel::buildInfo().commitDate, useSsl, Quassel::features()));
 }
 
 
@@ -303,9 +303,10 @@ void ClientAuthHandler::handle(const ClientRegistered &msg)
 {
     _coreConfigured = msg.coreConfigured;
     _backendInfo = msg.backendInfo;
-    _authBackendInfo = msg.authBackendInfo;
+    _authenticatorInfo = msg.authenticatorInfo;
 
-    Client::setCoreFeatures(static_cast<Quassel::Features>(msg.coreFeatures));
+    Client::setCoreFeatures(Quassel::Features(msg.coreFeatures));
+    SignalProxy::current()->sourcePeer()->setFeatures(Quassel::Features(msg.coreFeatures));
 
     // The legacy protocol enables SSL at this point
     if(_legacy && _account.useSsl())
@@ -322,7 +323,7 @@ void ClientAuthHandler::onConnectionReady()
 
     if (!_coreConfigured) {
         // start wizard
-        emit startCoreSetup(_backendInfo, _authBackendInfo);
+        emit startCoreSetup(_backendInfo, _authenticatorInfo);
     }
     else // TODO: check if we need LoginEnabled
         login();