#include "inspircd.h"
+enum
+{
+ // From RFC 1459.
+ ERR_SUMMONDISABLED = 445,
+ ERR_USERSDISABLED = 446
+};
+
/** Handle /CONNECT.
*/
: Command(parent, "CONNECT", 1)
{
flags_needed = 'o';
- syntax = "<servername>";
+ syntax = "<servermask>";
}
/** Handle command.
* @param user The user issuing the command
* @return A value from CmdResult to indicate command success or failure.
*/
- CmdResult Handle(const std::vector<std::string>& parameters, User* user)
+ CmdResult Handle(User* user, const Params& parameters) CXX11_OVERRIDE
{
/*
* This is handled by the server linking module, if necessary. Do not remove this stub.
* @param user The user issuing the command
* @return A value from CmdResult to indicate command success or failure.
*/
- CmdResult Handle(const std::vector<std::string>& parameters, User* user)
+ CmdResult Handle(User* user, const Params& parameters) CXX11_OVERRIDE
{
user->WriteNumeric(RPL_LINKS, ServerInstance->Config->ServerName, ServerInstance->Config->ServerName, InspIRCd::Format("0 %s", ServerInstance->Config->ServerDesc.c_str()));
user->WriteNumeric(RPL_ENDOFLINKS, '*', "End of /LINKS list.");
* @param user The user issuing the command
* @return A value from CmdResult to indicate command success or failure.
*/
- CmdResult Handle(const std::vector<std::string>& parameters, User* user)
+ CmdResult Handle(User* user, const Params& parameters) CXX11_OVERRIDE
{
if (user->registered == REG_ALL)
{
: Command(parent, "SQUIT", 1, 2)
{
flags_needed = 'o';
- syntax = "<servername>";
+ syntax = "<servermask>";
}
/** Handle command.
* @param user The user issuing the command
* @return A value from CmdResult to indicate command success or failure.
*/
- CmdResult Handle(const std::vector<std::string>& parameters, User* user)
+ CmdResult Handle(User* user, const Params& parameters) CXX11_OVERRIDE
{
user->WriteNotice("Look into loading a linking module (like m_spanningtree) if you want this to do anything useful.");
return CMD_FAILURE;
}
};
+class CommandSummon
+ : public SplitCommand
+{
+ public:
+ CommandSummon(Module* Creator)
+ : SplitCommand(Creator, "SUMMON", 1)
+ {
+ }
+
+ CmdResult HandleLocal(LocalUser* user, const Params& parameters) CXX11_OVERRIDE
+ {
+ user->WriteNumeric(ERR_SUMMONDISABLED, "SUMMON has been disabled");
+ return CMD_SUCCESS;
+ }
+};
+
+class CommandUsers
+ : public SplitCommand
+{
+ public:
+ CommandUsers(Module* Creator)
+ : SplitCommand(Creator, "USERS")
+ {
+ }
+
+ CmdResult HandleLocal(LocalUser* user, const Params& parameters) CXX11_OVERRIDE
+ {
+ user->WriteNumeric(ERR_USERSDISABLED, "USERS has been disabled");
+ return CMD_SUCCESS;
+ }
+};
+
class CoreModStub : public Module
{
CommandConnect cmdconnect;
CommandLinks cmdlinks;
CommandServer cmdserver;
CommandSquit cmdsquit;
+ CommandSummon cmdsummon;
+ CommandUsers cmdusers;
public:
CoreModStub()
- : cmdconnect(this), cmdlinks(this), cmdserver(this), cmdsquit(this)
+ : cmdconnect(this)
+ , cmdlinks(this)
+ , cmdserver(this)
+ , cmdsquit(this)
+ , cmdsummon(this)
+ , cmdusers(this)
{
}
- Version GetVersion()
+ Version GetVersion() CXX11_OVERRIDE
{
- return Version("Provides the stub commands CONNECT, LINKS, SERVER and SQUIT", VF_VENDOR|VF_CORE);
+ return Version("Provides stubs for unimplemented commands", VF_VENDOR|VF_CORE);
}
};