summaryrefslogtreecommitdiff
path: root/src/modules/m_chgident.cpp
diff options
context:
space:
mode:
authorpeavey <peavey@e03df62e-2008-0410-955e-edbf42e46eb7>2007-07-16 17:14:45 +0000
committerpeavey <peavey@e03df62e-2008-0410-955e-edbf42e46eb7>2007-07-16 17:14:45 +0000
commitbab14f0dd2345c9d7dcbc47c918563709e1ac094 (patch)
tree753a23cfc9fc08c6697e80b3e686f074aa911d85 /src/modules/m_chgident.cpp
parent3abff3a37550cc1d88dd4d1fd7ed526e89309a53 (diff)
'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are auto skipped by svn.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/modules/m_chgident.cpp')
-rw-r--r--src/modules/m_chgident.cpp93
1 files changed, 1 insertions, 92 deletions
diff --git a/src/modules/m_chgident.cpp b/src/modules/m_chgident.cpp
index 168adcc93..fb909b7ff 100644
--- a/src/modules/m_chgident.cpp
+++ b/src/modules/m_chgident.cpp
@@ -1,92 +1 @@
-/* +------------------------------------+
- * | Inspire Internet Relay Chat Daemon |
- * +------------------------------------+
- *
- * InspIRCd: (C) 2002-2007 InspIRCd Development Team
- * See: http://www.inspircd.org/wiki/index.php/Credits
- *
- * This program is free but copyrighted software; see
- * the file COPYING for details.
- *
- * ---------------------------------------------------
- */
-
-#include "inspircd.h"
-#include "users.h"
-#include "modules.h"
-
-/* $ModDesc: Provides support for the CHGIDENT command */
-
-/** Handle /CHGIDENT
- */
-class cmd_chgident : public command_t
-{
- public:
- cmd_chgident (InspIRCd* Instance) : command_t(Instance,"CHGIDENT", 'o', 2)
- {
- this->source = "m_chgident.so";
- syntax = "<nick> <newident>";
- }
-
- CmdResult Handle(const char** parameters, int pcnt, userrec *user)
- {
- userrec* dest = ServerInstance->FindNick(parameters[0]);
-
- if (!dest)
- {
- user->WriteServ("401 %s %s :No such nick/channel", user->nick, parameters[0]);
- return CMD_FAILURE;
- }
-
- if (!*parameters[1])
- {
- user->WriteServ("NOTICE %s :*** CHGIDENT: Ident must be specified", user->nick);
- return CMD_FAILURE;
- }
-
- if (strlen(parameters[1]) > IDENTMAX)
- {
- user->WriteServ("NOTICE %s :*** CHGIDENT: Ident is too long", user->nick);
- return CMD_FAILURE;
- }
-
- if (!ServerInstance->IsIdent(parameters[1]))
- {
- user->WriteServ("NOTICE %s :*** CHGIDENT: Invalid characters in ident", user->nick);
- return CMD_FAILURE;
- }
-
- dest->ChangeIdent(parameters[1]);
- ServerInstance->WriteOpers("%s used CHGIDENT to change %s's ident to '%s'", user->nick, dest->nick, dest->ident);
-
- /* route it! */
- return CMD_SUCCESS;
- }
-};
-
-
-class ModuleChgIdent : public Module
-{
- cmd_chgident* mycommand;
-
-
-public:
- ModuleChgIdent(InspIRCd* Me) : Module(Me)
- {
- mycommand = new cmd_chgident(ServerInstance);
- ServerInstance->AddCommand(mycommand);
- }
-
- virtual ~ModuleChgIdent()
- {
- }
-
- virtual Version GetVersion()
- {
- return Version(1,1,0,0,VF_VENDOR,API_VERSION);
- }
-
-};
-
-MODULE_INIT(ModuleChgIdent)
-
+/* +------------------------------------+ * | Inspire Internet Relay Chat Daemon | * +------------------------------------+ * * InspIRCd: (C) 2002-2007 InspIRCd Development Team * See: http://www.inspircd.org/wiki/index.php/Credits * * This program is free but copyrighted software; see * the file COPYING for details. * * --------------------------------------------------- */ #include "inspircd.h" #include "users.h" #include "modules.h" /* $ModDesc: Provides support for the CHGIDENT command */ /** Handle /CHGIDENT */ class cmd_chgident : public command_t { public: cmd_chgident (InspIRCd* Instance) : command_t(Instance,"CHGIDENT", 'o', 2) { this->source = "m_chgident.so"; syntax = "<nick> <newident>"; } CmdResult Handle(const char** parameters, int pcnt, userrec *user) { userrec* dest = ServerInstance->FindNick(parameters[0]); if (!dest) { user->WriteServ("401 %s %s :No such nick/channel", user->nick, parameters[0]); return CMD_FAILURE; } if (!*parameters[1]) { user->WriteServ("NOTICE %s :*** CHGIDENT: Ident must be specified", user->nick); return CMD_FAILURE; } if (strlen(parameters[1]) > IDENTMAX) { user->WriteServ("NOTICE %s :*** CHGIDENT: Ident is too long", user->nick); return CMD_FAILURE; } if (!ServerInstance->IsIdent(parameters[1])) { user->WriteServ("NOTICE %s :*** CHGIDENT: Invalid characters in ident", user->nick); return CMD_FAILURE; } dest->ChangeIdent(parameters[1]); ServerInstance->WriteOpers("%s used CHGIDENT to change %s's ident to '%s'", user->nick, dest->nick, dest->ident); /* route it! */ return CMD_SUCCESS; } }; class ModuleChgIdent : public Module { cmd_chgident* mycommand; public: ModuleChgIdent(InspIRCd* Me) : Module(Me) { mycommand = new cmd_chgident(ServerInstance); ServerInstance->AddCommand(mycommand); } virtual ~ModuleChgIdent() { } virtual Version GetVersion() { return Version(1,1,0,0,VF_VENDOR,API_VERSION); } }; MODULE_INIT(ModuleChgIdent) \ No newline at end of file