]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/mode.cpp
Explicitly disallow mode prefixes > 126, to prevent excess muppetry by 3rd party...
[user/henk/code/inspircd.git] / src / mode.cpp
index 14dd39b335a25630bbbeee4e724795469fa54003..db120cfe587a59be26b676815fbc44f4002b8f90 100644 (file)
@@ -484,7 +484,7 @@ void ModeParser::Process(const char** parameters, int pcnt, userrec *user, bool
 
                                                                        /* Yerk, invalid! */
                                                                        if ((parameter.find(':') == 0) || (parameter.rfind(' ') != std::string::npos))
-                                                                               parameter = "";
+                                                                               parameter.clear();
                                                                }
                                                                else
                                                                {
@@ -691,7 +691,7 @@ bool ModeParser::AddMode(ModeHandler* mh, unsigned const char modeletter)
         * If they do that, thats their problem, and if i ever EVER see an
         * official InspIRCd developer do that, i'll beat them with a paddle!
         */
-       if ((mh->GetModeChar() < 'A') || (mh->GetModeChar() > 'z'))
+       if ((mh->GetModeChar() < 'A') || (mh->GetModeChar() > 'z') || (mh->GetPrefix() > 126))
                return false;
 
        /* A mode prefix of ',' is not acceptable, it would fuck up server to server.