From c61fac32bc7559e3d6f7534919f115266eee5917 Mon Sep 17 00:00:00 2001 From: brain Date: Sun, 19 Aug 2007 19:23:53 +0000 Subject: Allow changing of an oper's host on oper up using (give it a connect allow or deny line name) - implements bug #367 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7760 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/cmd_oper.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/cmd_oper.cpp') diff --git a/src/cmd_oper.cpp b/src/cmd_oper.cpp index 331115e1d..63c7dc3e3 100644 --- a/src/cmd_oper.cpp +++ b/src/cmd_oper.cpp @@ -46,6 +46,7 @@ CmdResult cmd_oper::Handle (const char** parameters, int pcnt, userrec *user) char OperType[MAXBUF]; char TypeName[MAXBUF]; char HostName[MAXBUF]; + char ClassName[MAXBUF]; char TheHost[MAXBUF]; char TheIP[MAXBUF]; int j; @@ -75,7 +76,8 @@ CmdResult cmd_oper::Handle (const char** parameters, int pcnt, userrec *user) type_invalid = true; for (j =0; j < ServerInstance->Config->ConfValueEnum(ServerInstance->Config->config_data, "type"); j++) { - ServerInstance->Config->ConfValue(ServerInstance->Config->config_data, "type","name", j, TypeName, MAXBUF); + ServerInstance->Config->ConfValue(ServerInstance->Config->config_data, "type", "name", j, TypeName, MAXBUF); + ServerInstance->Config->ConfValue(ServerInstance->Config->config_data, "type", "class", j, ClassName, MAXBUF); if (!strcmp(TypeName,OperType)) { @@ -90,6 +92,8 @@ CmdResult cmd_oper::Handle (const char** parameters, int pcnt, userrec *user) ServerInstance->Config->ConfValue(ServerInstance->Config->config_data, "type","host", j, HostName, MAXBUF); if (*HostName) user->ChangeDisplayedHost(HostName); + if (*ClassName) + user->CheckClass(ClassName); found = true; type_invalid = false; break; -- cgit v1.2.3