diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/core/ss_main.c | 23 | ||||
-rw-r--r-- | src/servers.c | 3 |
2 files changed, 13 insertions, 13 deletions
diff --git a/src/core/ss_main.c b/src/core/ss_main.c index a0a855dd8..c92ce5211 100644 --- a/src/core/ss_main.c +++ b/src/core/ss_main.c @@ -47,12 +47,12 @@ class SSMain : public Module if (servsock == -1) { -// EvtHook *hook = createEventHook(EVENT_SERVER_CONNECT, statserv_create); -// this->AddEventHook(hook); + ModuleManager::Attach(I_OnServerConnect, this); } else statserv_create(0, NULL); } + ~SSMain() { CommandHash *current; @@ -71,18 +71,17 @@ class SSMain : public Module delete statserv; } } -}; -int statserv_create(int argc, char **argv) -{ - statserv = findbot("StatServ"); - if (!statserv) + void OnServerConnect(const std::string &sname) { - statserv = new BotInfo("StatServ", ServiceUser, ServiceHost, "Stats Service"); - ircdproto->SendClientIntroduction("StatServ", ServiceUser, ServiceHost, "Stats Service", ircd->pseudoclient_mode, statserv->uid.c_str()); + statserv = findbot("StatServ"); + if (!statserv) + { + statserv = new BotInfo("StatServ", ServiceUser, ServiceHost, "Stats Service"); + ircdproto->SendClientIntroduction("StatServ", ServiceUser, ServiceHost, "Stats Service", ircd->pseudoclient_mode, statserv->uid.c_str()); + } + statserv->cmdTable = cmdTable; } - statserv->cmdTable = cmdTable; - return MOD_CONT; -} +}; MODULE_INIT("ss_main", SSMain) diff --git a/src/servers.c b/src/servers.c index b6f16eaa7..e66c5be98 100644 --- a/src/servers.c +++ b/src/servers.c @@ -13,6 +13,7 @@ */ #include "services.h" +#include "modules.h" Server *servlist = NULL; Server *me_server = NULL; /* This are we */ @@ -402,7 +403,7 @@ void do_server(const char *source, const char *servername, const char *hops, throw CoreException("Recieved a server from a nonexistant uplink?"); new_server(s, servername, descript, 0, numeric); - send_event(EVENT_SERVER_CONNECT, 1, servername); + FOREACH_MOD(I_OnServerConnect, OnServerConnect(servername)); } /*************************************************************************/ |