diff --git a/src/iaxvoiplink.cpp b/src/iaxvoiplink.cpp
index f28a33bc41ca707dc6ebc19f21a2c453b1b39ade..9efe1b2fde235cc1cf0915476e6f0f512e337799 100644
--- a/src/iaxvoiplink.cpp
+++ b/src/iaxvoiplink.cpp
@@ -430,7 +430,9 @@ IAXVoIPLink::sendUnregister()
 
   _nextRefreshStamp = 0;
 
+  _debug("IAX2 send unregister\n");
   setRegistrationState(Unregistered);
+  Manager::instance().unregistrationSucceed("");
 
   return false;
 }
diff --git a/src/managerimpl.cpp b/src/managerimpl.cpp
index 52824428f6777245d5758c0d1b74b6bf45152b82..21bf054ced1bc1ac20fabdd3d607c7c1c3d762b3 100644
--- a/src/managerimpl.cpp
+++ b/src/managerimpl.cpp
@@ -798,7 +798,6 @@ ManagerImpl::registrationSucceed(const AccountID& accountid)
 {
   Account* acc = getAccount(accountid);
   if ( acc ) { 
-    //acc->setState(true); 
     _debug("REGISTRATION SUCCEED\n");
     if (_dbus) _dbus->getConfigurationManager()->accountsChanged();
   }
@@ -808,12 +807,8 @@ ManagerImpl::registrationSucceed(const AccountID& accountid)
   void 
 ManagerImpl::unregistrationSucceed(const AccountID& accountid)
 {
-  Account* acc = getAccount(accountid);
-  if ( acc ) { 
-    //acc->setState(true); 
-    _debug("UNREGISTRATION SUCCEED\n");
-    if (_dbus) _dbus->getConfigurationManager()->accountsChanged();
-  }
+  _debug("UNREGISTRATION SUCCEED\n");
+  if (_dbus) _dbus->getConfigurationManager()->accountsChanged();
 }
 
 //THREAD=VoIP
@@ -1751,7 +1746,6 @@ ManagerImpl::getCallStatus(const std::string& sequenceId)
 }
 
 //THREAD=Main
-/* Unused, Deprecated */
   bool 
 ManagerImpl::getConfigAll(const std::string& sequenceId)
 {