* ---------------------------------------------------
*/
+/* $Core: libIRCDserver */
+
#include <signal.h>
#include "exitcodes.h"
#include "inspircd.h"
void InspIRCd::Exit(int status)
{
+ printf("exit with status %d\n", status);
#ifdef WINDOWS
delete WindowsIPC;
#endif
{
this->SendError("Exiting with status " + ConvToStr(status) + " (" + std::string(ExitCodes[status]) + ")");
this->Cleanup();
- }
- exit (status);
+ }
+ printf("Exit done.\n");
+ exit (status);
}
void InspIRCd::Rehash()
std::string InspIRCd::GetVersionString()
{
char versiondata[MAXBUF];
- char dnsengine[] = "singlethread-object";
-
if (*Config->CustomVersion)
{
snprintf(versiondata,MAXBUF,"%s %s :%s",VERSION,Config->ServerName,Config->CustomVersion);
}
else
{
- snprintf(versiondata,MAXBUF,"%s %s :%s [FLAGS=%s,%s,%s]",VERSION,Config->ServerName,SYSTEM,REVISION,SE->GetName().c_str(),dnsengine);
+ snprintf(versiondata,MAXBUF,"%s %s :%s [FLAGS=%s,%s,%d]",VERSION,Config->ServerName,SYSTEM,REVISION,SE->GetName().c_str(),Config->sid);
}
return versiondata;
}
if (current_uid[3] == 'Z')
{
- /* If we get to here, we need to wrap around to AAAA. */
- for(int j = 3; j < UUID_LENGTH - 1; j++)
- current_uid[j] = 'A';
+ /*
+ * Ugh. We have run out of room.. roll back around to the
+ * start of the UUID namespace. -- w00t
+ */
+ this->InitialiseUID();
/*
* and now we need to break the inner for () to continue the while (),