1 /* +------------------------------------+
2 * | Inspire Internet Relay Chat Daemon |
3 * +------------------------------------+
5 * InspIRCd: (C) 2002-2009 InspIRCd Development Team
6 * See: http://wiki.inspircd.org/Credits
8 * This program is free but copyrighted software; see
9 * the file COPYING for details.
11 * ---------------------------------------------------
17 #include "treesocket.h"
18 #include "treeserver.h"
21 /* $ModDep: m_spanningtree/utils.h m_spanningtree/treeserver.h m_spanningtree/treesocket.h */
25 /** remote MOTD. leet, huh? */
26 bool TreeSocket::Motd(const std::string &prefix, parameterlist ¶ms)
28 if (params.size() > 0)
30 if (InspIRCd::Match(this->ServerInstance->Config->ServerName, params[0]))
32 /* It's for our server */
34 User* source = this->ServerInstance->FindNick(prefix);
39 par.push_back(prefix);
42 if (!ServerInstance->Config->MOTD.size())
44 par[1] = std::string("::")+ServerInstance->Config->ServerName+" 422 "+source->nick+" :Message of the day file is missing.";
45 Utils->DoOneToOne(this->ServerInstance->Config->GetSID(), "PUSH",par, source->server);
49 par[1] = std::string("::")+ServerInstance->Config->ServerName+" 375 "+source->nick+" :"+ServerInstance->Config->ServerName+" message of the day";
50 Utils->DoOneToOne(this->ServerInstance->Config->GetSID(), "PUSH",par, source->server);
52 for (unsigned int i = 0; i < ServerInstance->Config->MOTD.size(); i++)
54 par[1] = std::string("::")+ServerInstance->Config->ServerName+" 372 "+source->nick+" :- "+ServerInstance->Config->MOTD[i];
55 Utils->DoOneToOne(this->ServerInstance->Config->GetSID(), "PUSH",par, source->server);
58 par[1] = std::string("::")+ServerInstance->Config->ServerName+" 376 "+source->nick+" :End of message of the day.";
59 Utils->DoOneToOne(this->ServerInstance->Config->GetSID(), "PUSH",par, source->server);
65 User* source = this->ServerInstance->FindNick(prefix);
67 Utils->DoOneToOne(prefix, "MOTD", params, params[0]);