summaryrefslogtreecommitdiff
path: root/src/cmd_oper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd_oper.cpp')
-rw-r--r--src/cmd_oper.cpp6
1 files changed, 5 insertions, 1 deletions
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;