diff options
| author | Adam <Adam@drink-coca-cola.info> | 2010-04-29 17:31:34 -0400 |
|---|---|---|
| committer | Adam <Adam@anope.org> | 2010-06-18 20:58:52 -0400 |
| commit | c1d161dec451ea790ff87078b5d80b1f71a3e9f0 (patch) | |
| tree | 2ada0230d0411d10bb1e710d701874d253a4d4aa /src/protocol/bahamut.c | |
| parent | 73e93305c10f349742fad3b2197c6c5dd3aea34e (diff) | |
Rewrote all of the server handling code
Diffstat (limited to 'src/protocol/bahamut.c')
| -rw-r--r-- | src/protocol/bahamut.c | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/src/protocol/bahamut.c b/src/protocol/bahamut.c index 1e38a4aa2..d84d3f25a 100644 --- a/src/protocol/bahamut.c +++ b/src/protocol/bahamut.c @@ -273,15 +273,15 @@ class BahamutIRCdProto : public IRCDProto /* SERVER */ void SendServer(Server *server) { - send_cmd(NULL, "SERVER %s %d :%s", server->name, server->hops, server->desc); + send_cmd(NULL, "SERVER %s %d :%s", server->GetName().c_str(), server->GetHops(), server->GetDescription().c_str()); } void SendConnect() { + Me = new Server(NULL, Config.ServerName, 0, Config.ServerDesc, ""); bahamut_cmd_pass(uplink_server->password); bahamut_cmd_capab(); - me_server = new_server(NULL, Config.ServerName, Config.ServerDesc, SERVER_ISME, ""); - SendServer(me_server); + SendServer(Me); bahamut_cmd_svinfo(); bahamut_cmd_burst(); } @@ -575,11 +575,7 @@ int anope_event_436(const char *source, int ac, const char **av) /* EVENT : SERVER */ int anope_event_server(const char *source, int ac, const char **av) { - if (!stricmp(av[1], "1")) { - uplink = sstrdup(av[0]); - } - - do_server(source, av[0], av[1], av[2], ""); + do_server(source, av[0], atoi(av[1]), av[2], ""); return MOD_CONT; } @@ -711,8 +707,8 @@ int anope_event_error(const char *source, int ac, const char **av) int anope_event_burst(const char *source, int ac, const char **av) { - Server *s; - s = findserver(servlist, source); + Server *s = Server::Find(source ? source : ""); + if (!ac) { /* for future use - start burst */ } else { @@ -720,9 +716,10 @@ int anope_event_burst(const char *source, int ac, const char **av) * finished bursting. If there was no source, then our uplink * server finished bursting. -GD */ - if (!s && serv_uplink) - s = serv_uplink; - finish_sync(s, 1); + if (!s) + s = Me->GetUplink(); + if (s) + s->Sync(true); } return MOD_CONT; } |
