From 5ee7322040d501fe55853453caa230f4550313c3 Mon Sep 17 00:00:00 2001 From: w00t Date: Tue, 28 Aug 2007 13:20:11 +0000 Subject: Add a global fake client to class InspIRCd used instead of instantiating a fake client every time a mode needs to be forced through, etc git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7938 e03df62e-2008-0410-955e-edbf42e46eb7 --- include/inspircd.h | 4 ++++ src/inspircd.cpp | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/include/inspircd.h b/include/inspircd.h index aaa597acf..6d5f35eb2 100644 --- a/include/inspircd.h +++ b/include/inspircd.h @@ -342,6 +342,10 @@ class CoreExport InspIRCd : public classbase */ interfacelist Interfaces; + /** Globally accessible fake user record. This is used to force mode changes etc across s2s, etc.. bit ugly, but.. better than how this was done in 1.1 + */ + userrec *FakeClient; + /** The current time, updated in the mainloop */ time_t TIME; diff --git a/src/inspircd.cpp b/src/inspircd.cpp index bc968e87e..f39ba03bc 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -425,6 +425,10 @@ InspIRCd::InspIRCd(int argc, char** argv) Exit(EXIT_STATUS_LOG); } + /* set up fake client */ + this->FakeClient = new userrec(this); + this->FakeClient->SetFd(FD_MAGIC_NUMBER); + this->stats = new serverstats(); this->Timers = new TimerManager(this); this->Parser = new CommandParser(this); -- cgit v1.2.3