X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_dccallow.cpp;h=da66d318a295b13080832b823fde86e33213d915;hb=39897f56f5f84d8d4c8903fb46a03c2fdcf733ec;hp=738567ff716473cea9cb73cd89c0fe2e1d162da9;hpb=a1a7b96a8c994eb09a3d071f3daf28252b8c188b;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_dccallow.cpp b/src/modules/m_dccallow.cpp index 738567ff7..da66d318a 100644 --- a/src/modules/m_dccallow.cpp +++ b/src/modules/m_dccallow.cpp @@ -82,6 +82,11 @@ class CommandDccallow : public Command DisplayHelp(user); return CMD_FAILURE; } + else + { + user->WriteNumeric(998, "%s :DCCALLOW command not understood. For help on DCCALLOW, type /DCCALLOW HELP", user->nick.c_str()); + return CMD_FAILURE; + } } std::string nick = parameters[0].substr(1); @@ -125,6 +130,12 @@ class CommandDccallow : public Command } else if (action == '+') { + if (target == user) + { + user->WriteNumeric(996, "%s %s :You cannot add yourself to your own DCCALLOW list!", user->nick.c_str(), user->nick.c_str()); + return CMD_FAILURE; + } + if (!user->GetExt("dccallow_list", dl)) { dl = new dccallowlist; @@ -132,6 +143,7 @@ class CommandDccallow : public Command // add this user to the userlist ul.push_back(user); } + for (dccallowlist::const_iterator k = dl->begin(); k != dl->end(); ++k) { if (k->nickname == target->nick) @@ -139,11 +151,6 @@ class CommandDccallow : public Command user->WriteNumeric(996, "%s %s :%s is already on your DCCALLOW list", user->nick.c_str(), user->nick.c_str(), target->nick.c_str()); return CMD_FAILURE; } - else if (InspIRCd::Match(user->GetFullHost(), k->hostmask)) - { - user->WriteNumeric(996, "%s %s :You cannot add yourself to your own DCCALLOW list!", user->nick.c_str(), user->nick.c_str()); - return CMD_FAILURE; - } } std::string mask = std::string(target->nick)+"!"+std::string(target->ident)+"@"+std::string(target->dhost); @@ -195,7 +202,7 @@ class CommandDccallow : public Command void DisplayHelp(User* user) { - user->WriteNumeric(998, "%s :DCCALLOW [<+|->nick.c_str() [time]] [list] [help]", user->nick.c_str()); + user->WriteNumeric(998, "%s :DCCALLOW [<+|->nick [time]] [list] [help]", user->nick.c_str()); user->WriteNumeric(998, "%s :You may allow DCCs from specific users by specifying a", user->nick.c_str()); user->WriteNumeric(998, "%s :DCC allow for the user you want to receive DCCs from.", user->nick.c_str()); user->WriteNumeric(998, "%s :For example, to allow the user Brain to send you inspircd.exe", user->nick.c_str()); @@ -348,11 +355,12 @@ class ModuleDCCAllow : public Module if (defaultaction == "allow") return 0; } - user->WriteServ("NOTICE %s :The user %s is not accepting DCC SENDs from you. Your file %s was not sent.", user->nick.c_str(), u->nick.c_str(), filename.c_str()); - u->WriteServ("NOTICE %s :%s (%s@%s) attempted to send you a file named %s, which was blocked.", u->nick.c_str(), user->nick.c_str(), user->ident.c_str(), user->dhost.c_str(), filename.c_str()); - u->WriteServ("NOTICE %s :If you trust %s and were expecting this, you can type /DCCALLOW HELP for information on the DCCALLOW system.", u->nick.c_str(), user->nick.c_str()); - return 1; } + + user->WriteServ("NOTICE %s :The user %s is not accepting DCC SENDs from you. Your file %s was not sent.", user->nick.c_str(), u->nick.c_str(), filename.c_str()); + u->WriteServ("NOTICE %s :%s (%s@%s) attempted to send you a file named %s, which was blocked.", u->nick.c_str(), user->nick.c_str(), user->ident.c_str(), user->dhost.c_str(), filename.c_str()); + u->WriteServ("NOTICE %s :If you trust %s and were expecting this, you can type /DCCALLOW HELP for information on the DCCALLOW system.", u->nick.c_str(), user->nick.c_str()); + return 1; } else if ((type == "CHAT") && (blockchat)) { @@ -463,7 +471,7 @@ class ModuleDCCAllow : public Module virtual Version GetVersion() { - return Version(1, 2, 0, 0, VF_COMMON | VF_VENDOR, API_VERSION); + return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION); } };