From bab14f0dd2345c9d7dcbc47c918563709e1ac094 Mon Sep 17 00:00:00 2001 From: peavey Date: Mon, 16 Jul 2007 17:14:45 +0000 Subject: '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 --- src/modules/m_vhost.cpp | 96 +------------------------------------------------ 1 file changed, 1 insertion(+), 95 deletions(-) (limited to 'src/modules/m_vhost.cpp') diff --git a/src/modules/m_vhost.cpp b/src/modules/m_vhost.cpp index c77a3f85f..10fc76f05 100644 --- a/src/modules/m_vhost.cpp +++ b/src/modules/m_vhost.cpp @@ -1,95 +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 "channels.h" -#include "modules.h" - -/* $ModDesc: Provides masking of user hostnames via traditional /VHOST command */ - -static ConfigReader* Conf; - -/** Handle /VHOST - */ -class cmd_vhost : public command_t -{ - public: - cmd_vhost (InspIRCd* Instance) : command_t(Instance,"VHOST", 0, 2) - { - this->source = "m_vhost.so"; - syntax = " "; - } - - CmdResult Handle (const char** parameters, int pcnt, userrec *user) - { - for (int index = 0; index < Conf->Enumerate("vhost"); index++) - { - std::string mask = Conf->ReadValue("vhost","host",index); - std::string username = Conf->ReadValue("vhost","user",index); - std::string pass = Conf->ReadValue("vhost","pass",index); - if ((!strcmp(parameters[0],username.c_str())) && (!strcmp(parameters[1],pass.c_str()))) - { - if (!mask.empty()) - { - user->WriteServ("NOTICE "+std::string(user->nick)+" :Setting your VHost: " + mask); - user->ChangeDisplayedHost(mask.c_str()); - return CMD_FAILURE; - } - } - } - user->WriteServ("NOTICE "+std::string(user->nick)+" :Invalid username or password."); - return CMD_FAILURE; - } -}; - -class ModuleVHost : public Module -{ - private: - - cmd_vhost* mycommand; - - public: - ModuleVHost(InspIRCd* Me) : Module(Me) - { - - Conf = new ConfigReader(ServerInstance); - mycommand = new cmd_vhost(ServerInstance); - ServerInstance->AddCommand(mycommand); - } - - virtual ~ModuleVHost() - { - DELETE(Conf); - } - - void Implements(char* List) - { - List[I_OnRehash] = 1; - } - - virtual void OnRehash(userrec* user, const std::string ¶meter) - { - DELETE(Conf); - Conf = new ConfigReader(ServerInstance); - } - - virtual Version GetVersion() - { - return Version(1,1,0,1,VF_VENDOR,API_VERSION); - } - -}; - -MODULE_INIT(ModuleVHost) - +/* +------------------------------------+ * | 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 "channels.h" #include "modules.h" /* $ModDesc: Provides masking of user hostnames via traditional /VHOST command */ static ConfigReader* Conf; /** Handle /VHOST */ class cmd_vhost : public command_t { public: cmd_vhost (InspIRCd* Instance) : command_t(Instance,"VHOST", 0, 2) { this->source = "m_vhost.so"; syntax = " "; } CmdResult Handle (const char** parameters, int pcnt, userrec *user) { for (int index = 0; index < Conf->Enumerate("vhost"); index++) { std::string mask = Conf->ReadValue("vhost","host",index); std::string username = Conf->ReadValue("vhost","user",index); std::string pass = Conf->ReadValue("vhost","pass",index); if ((!strcmp(parameters[0],username.c_str())) && (!strcmp(parameters[1],pass.c_str()))) { if (!mask.empty()) { user->WriteServ("NOTICE "+std::string(user->nick)+" :Setting your VHost: " + mask); user->ChangeDisplayedHost(mask.c_str()); return CMD_FAILURE; } } } user->WriteServ("NOTICE "+std::string(user->nick)+" :Invalid username or password."); return CMD_FAILURE; } }; class ModuleVHost : public Module { private: cmd_vhost* mycommand; public: ModuleVHost(InspIRCd* Me) : Module(Me) { Conf = new ConfigReader(ServerInstance); mycommand = new cmd_vhost(ServerInstance); ServerInstance->AddCommand(mycommand); } virtual ~ModuleVHost() { DELETE(Conf); } void Implements(char* List) { List[I_OnRehash] = 1; } virtual void OnRehash(userrec* user, const std::string ¶meter) { DELETE(Conf); Conf = new ConfigReader(ServerInstance); } virtual Version GetVersion() { return Version(1,1,0,1,VF_VENDOR,API_VERSION); } }; MODULE_INIT(ModuleVHost) \ No newline at end of file -- cgit v1.2.3