X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Finspircd.cpp;h=a921db193514338a9a0bdb31adefe6680f2d4f98;hb=d6501677e1a66e4b438815e67b705eb26b68a4bc;hp=385bef8e325ed169a9cf270529c858902683dbd4;hpb=c681081852491531151e96b4df31f6547755a390;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/inspircd.cpp b/src/inspircd.cpp index 385bef8e3..a921db193 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -2,7 +2,7 @@ * | Inspire Internet Relay Chat Daemon | * +------------------------------------+ * - * InspIRCd: (C) 2002-2008 InspIRCd Development Team + * InspIRCd: (C) 2002-2009 InspIRCd Development Team * See: http://www.inspircd.org/wiki/index.php/Credits * * This program is free but copyrighted software; see @@ -11,8 +11,6 @@ * --------------------------------------------------- */ -/* w00t was here. ;p */ - /* $Install: src/inspircd $(BINPATH) */ #include "inspircd.h" #include @@ -29,13 +27,6 @@ #define RUSAGE_SELF 0 #endif - /* CRT memory debugging */ - #ifdef DEBUG - #define _CRTDBG_MAP_ALLOC - #include - #include - #endif - #include // setuid #include // setgid #endif @@ -90,7 +81,7 @@ const char* ExitCodes[] = "CreateEvent failed" /* 19 */ }; -template void DeleteZero(T* n) +template static void DeleteZero(T* n) { if (n != NULL) { @@ -239,6 +230,8 @@ void InspIRCd::SetSignals() signal(SIGHUP, InspIRCd::SetSignal); signal(SIGPIPE, SIG_IGN); signal(SIGCHLD, SIG_IGN); + /* We want E2BIG not a signal! */ + signal(SIGXFSZ, SIG_IGN); #endif signal(SIGTERM, InspIRCd::SetSignal); } @@ -326,7 +319,7 @@ void InspIRCd::WritePID(const std::string &filename) InspIRCd::InspIRCd(int argc, char** argv) : GlobalCulls(this), - /* Functor initialisation. Note that the ordering here is very important. + /* Functor initialisation. Note that the ordering here is very important. * * THIS MUST MATCH ORDER OF DECLARATION OF THE HandleWhateverFunc classes * within class InspIRCd. @@ -358,7 +351,7 @@ InspIRCd::InspIRCd(int argc, char** argv) #ifdef WIN32 // Strict, frequent checking of memory on debug builds _CrtSetDbgFlag ( _CRTDBG_CHECK_ALWAYS_DF | _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF ); - + // Avoid erroneous frees on early exit WindowsIPC = 0; #endif @@ -407,10 +400,10 @@ InspIRCd::InspIRCd(int argc, char** argv) this->PI = new ProtocolInterface(this); this->s_signal = 0; - + // Create base manager classes early, so nothing breaks this->Users = new UserManager(this); - + this->Users->unregistered_count = 0; this->Users->clientlist = new user_hash(); @@ -543,7 +536,7 @@ InspIRCd::InspIRCd(int argc, char** argv) printf_c("(C) InspIRCd Development Team.\033[0m\n\n"); printf_c("Developers:\n"); printf_c("\t\033[1;32mBrain, FrostyCoolSlug, w00t, Om, Special\n"); - printf_c("\t\033[1;32mpippijn, peavey, aquanight, fez, psychon, dz\033[0m\n\n"); + printf_c("\t\033[1;32mpeavey, aquanight, psychon, dz, danieldg\033[0m\n\n"); printf_c("Others:\t\t\t\033[1;32mSee /INFO Output\033[0m\n"); Config->ClearStack(); @@ -632,7 +625,7 @@ InspIRCd::InspIRCd(int argc, char** argv) printf("\n"); this->Modules->LoadAll(); - + /* Just in case no modules were loaded - fix for bug #101 */ this->BuildISupport(); InitializeDisabledCommands(Config->DisabledCommands, this); @@ -650,7 +643,7 @@ InspIRCd::InspIRCd(int argc, char** argv) } printf("\nInspIRCd is now running as '%s'[%s] with %d max open sockets\n", Config->ServerName,Config->GetSID().c_str(), SE->GetMaxFds()); - + #ifndef WINDOWS if (!Config->nofork) { @@ -859,7 +852,7 @@ int InspIRCd::Run() this->stats->LastCPU = ru.ru_utime; } #else - WindowsIPC->Check(); + WindowsIPC->Check(); #endif }