: Command(parent, "ZLINE", 1, 3)
{
flags_needed = 'o';
- Penalty = 0;
syntax = "<ipmask> [<duration> :<reason>]";
}
-CmdResult CommandZline::Handle (const std::vector<std::string>& parameters, User *user)
+CmdResult CommandZline::Handle(User* user, const Params& parameters)
{
std::string target = parameters[0];
ipaddr++;
}
- if (ServerInstance->IPMatchesEveryone(ipaddr,user))
+ IPMatcher matcher;
+ if (InsaneBan::MatchesEveryone(ipaddr, matcher, user, "Z", "ipmasks"))
return CMD_FAILURE;
unsigned long duration = InspIRCd::Duration(parameters[1]);
return CMD_SUCCESS;
}
+
+bool CommandZline::IPMatcher::Check(User* user, const std::string& ip) const
+{
+ return InspIRCd::MatchCIDR(user->GetIPString(), ip, ascii_case_insensitive_map);
+}