diff options
Diffstat (limited to 'src/commands/cmd_gline.cpp')
-rw-r--r-- | src/commands/cmd_gline.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/commands/cmd_gline.cpp b/src/commands/cmd_gline.cpp index caed54ebe..13d014084 100644 --- a/src/commands/cmd_gline.cpp +++ b/src/commands/cmd_gline.cpp @@ -6,7 +6,7 @@ * See: http://www.inspircd.org/wiki/index.php/Credits * * This program is free but copyrighted software; see - * the file COPYING for details. + * the file COPYING for details. * * --------------------------------------------------- */ @@ -26,7 +26,16 @@ CmdResult CommandGline::Handle (const char** parameters, int pcnt, User *user) { if (pcnt >= 3) { - IdentHostPair ih = ServerInstance->XLines->IdentSplit(parameters[0]); + IdentHostPair ih; + User* find = ServerInstance->FindNick(parameters[0]); + if (find) + { + ih.first = "*"; + ih.second = find->GetIPString(); + } + else + ih = ServerInstance->XLines->IdentSplit(parameters[0]); + if (ServerInstance->HostMatchesEveryone(ih.first+"@"+ih.second,user)) return CMD_FAILURE; |