X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Finspircd.cpp;h=cb2b5db9d7a27aa88a05553cdd6b6602887a418c;hb=930fd98e48f68b050d3938607bf420844fabbc37;hp=8d0b8a6499014a747366807b490479ae2d30aa1b;hpb=53f72298692a4b76d49327c8d696c8c2927c2a68;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/inspircd.cpp b/src/inspircd.cpp index 8d0b8a649..cb2b5db9d 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -109,8 +109,8 @@ void InspIRCd::Cleanup() ports.clear(); /* Close all client sockets, or the new process inherits them */ - LocalUserList& list = Users->local_users; - for (LocalUserList::iterator i = list.begin(); i != list.end(); ++i) + const UserManager::LocalList& list = Users.GetLocalUsers(); + for (UserManager::LocalList::const_iterator i = list.begin(); i != list.end(); ++i) Users->QuitUser(*i, "Server shutdown"); GlobalCulls.Apply(); @@ -124,14 +124,10 @@ void InspIRCd::Cleanup() FakeClient->cull(); } DeleteZero(this->FakeClient); - DeleteZero(this->Users); DeleteZero(this->XLines); - DeleteZero(this->Modules); - DeleteZero(this->SNO); DeleteZero(this->Config); SocketEngine::Deinit(); Logs->CloseLogs(); - DeleteZero(this->Logs); } void InspIRCd::SetSignals() @@ -233,7 +229,7 @@ InspIRCd::InspIRCd(int argc, char** argv) : * THIS MUST MATCH THE ORDER OF DECLARATION OF THE FUNCTORS, e.g. the methods * themselves within the class. */ - OperQuit("operquit", NULL), + OperQuit("operquit", ExtensionItem::EXT_USER, NULL), GenRandom(&HandleGenRandom), IsChannel(&HandleIsChannel), IsNick(&HandleIsNick), @@ -250,11 +246,7 @@ InspIRCd::InspIRCd(int argc, char** argv) : do_nolog = 0, do_root = 0; // Initialize so that if we exit before proper initialization they're not deleted - this->Logs = 0; - this->Users = 0; this->Config = 0; - this->SNO = 0; - this->Modules = 0; this->XLines = 0; this->ConfigThread = NULL; this->FakeClient = NULL; @@ -262,17 +254,9 @@ InspIRCd::InspIRCd(int argc, char** argv) : UpdateTime(); this->startup_time = TIME.tv_sec; - // This must be created first, so other parts of Insp can use it while starting up - this->Logs = new LogManager; - SocketEngine::Init(); - // Create base manager classes early, so nothing breaks - this->Users = new UserManager; - this->Config = new ServerConfig; - this->SNO = new SnomaskManager; - this->Modules = new ModuleManager(); dynamic_reference_base::reset_all(); this->XLines = new XLineManager; @@ -387,7 +371,7 @@ InspIRCd::InspIRCd(int argc, char** argv) : } } - std::cout << con_green << "Inspire Internet Relay Chat Server" << con_reset << ", compiled on " __DATE__ " at " __TIME__ << std::endl; + std::cout << con_green << "InspIRCd - Internet Relay Chat Daemon" << con_reset << ", compiled on " __DATE__ " at " __TIME__ << std::endl; std::cout << con_green << "(C) InspIRCd Development Team." << con_reset << std::endl << std::endl; std::cout << "Developers:" << std::endl; std::cout << con_green << "\tBrain, FrostyCoolSlug, w00t, Om, Special, peavey" << std::endl;