]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/server.cpp
This works with multiple remote includes now except it hangs when an include is withi...
[user/henk/code/inspircd.git] / src / server.cpp
index 4568c43fda651a25d091eef19f077825cf2f4f72..f4f71d4719d46e99abd952160d2ea56abbd7c7fb 100644 (file)
@@ -11,6 +11,8 @@
  * ---------------------------------------------------
  */
 
+/* $Core: libIRCDserver */
+
 #include <signal.h>
 #include "exitcodes.h"
 #include "inspircd.h"
@@ -31,7 +33,6 @@ void InspIRCd::SignalHandler(int signal)
 
 void InspIRCd::Exit(int status)
 {
-       printf("exit with status %d\n", status);
 #ifdef WINDOWS
        delete WindowsIPC;
 #endif
@@ -40,7 +41,6 @@ void InspIRCd::Exit(int status)
                this->SendError("Exiting with status " + ConvToStr(status) + " (" + std::string(ExitCodes[status]) + ")");
                this->Cleanup();
        }
-       printf("Exit done.\n");
        exit (status);
 }
 
@@ -52,7 +52,7 @@ void InspIRCd::Rehash()
                this->WriteOpers("*** ERROR: Could not open logfile %s: %s", Config->logpath.c_str(), strerror(errno));
        this->RehashUsersAndChans();
        FOREACH_MOD_I(this, I_OnGarbageCollect, OnGarbageCollect());
-       this->Config->Read(false,NULL);
+       /*this->Config->Read(false,NULL);*/
        this->ResetMaxBans();
        this->Res->Rehash();
        FOREACH_MOD_I(this,I_OnRehash,OnRehash(NULL,""));
@@ -63,7 +63,7 @@ void InspIRCd::RehashServer()
 {
        this->WriteOpers("*** Rehashing config file");
        this->RehashUsersAndChans();
-       this->Config->Read(false,NULL);
+       /*this->Config->Read(false,NULL);*/
        this->ResetMaxBans();
        this->Res->Rehash();
 }
@@ -87,8 +87,8 @@ void InspIRCd::BuildISupport()
        // the neatest way to construct the initial 005 numeric, considering the number of configure constants to go in it...
        std::stringstream v;
        v << "WALLCHOPS WALLVOICES MODES=" << MAXMODES << " CHANTYPES=# PREFIX=" << this->Modes->BuildPrefixes() << " MAP MAXCHANNELS=" << Config->MaxChans << " MAXBANS=60 VBANLIST NICKLEN=" << NICKMAX-1;
-       v << " CASEMAPPING=rfc1459 STATUSMSG=@%+ CHARSET=ascii TOPICLEN=" << MAXTOPIC << " KICKLEN=" << MAXKICK << " MAXTARGETS=" << Config->MaxTargets << " AWAYLEN=";
-       v << MAXAWAY << " CHANMODES=" << this->Modes->ChanModes() << " FNC NETWORK=" << Config->Network << " MAXPARA=32 ELIST=MU";
+       v << " CASEMAPPING=rfc1459 STATUSMSG=@" << (this->Config->AllowHalfop ? "%" : "") << "+ CHARSET=ascii TOPICLEN=" << MAXTOPIC << " KICKLEN=" << MAXKICK << " MAXTARGETS=" << Config->MaxTargets;
+       v << " AWAYLEN=" << MAXAWAY << " CHANMODES=" << this->Modes->ChanModes() << " FNC NETWORK=" << Config->Network << " MAXPARA=32 ELIST=MU";
        Config->data005 = v.str();
        FOREACH_MOD_I(this,I_On005Numeric,On005Numeric(Config->data005));
        Config->Update005();