]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/helperfuncs.cpp
Make the build reproducible by removing time related macros.
[user/henk/code/inspircd.git] / src / helperfuncs.cpp
index 5cde46246f3acb7ca6b90995e316b424304540c4..8bb81481ef6807d3e22ada43f290c9db434388a4 100644 (file)
@@ -37,14 +37,7 @@ User* InspIRCd::FindNick(const std::string &nick)
 {
        if (!nick.empty() && isdigit(*nick.begin()))
                return FindUUID(nick);
-
-       user_hash::iterator iter = this->Users->clientlist.find(nick);
-
-       if (iter == this->Users->clientlist.end())
-               /* Couldn't find it */
-               return NULL;
-
-       return iter->second;
+       return FindNickOnly(nick);
 }
 
 User* InspIRCd::FindNickOnly(const std::string &nick)
@@ -79,25 +72,6 @@ Channel* InspIRCd::FindChan(const std::string &chan)
        return iter->second;
 }
 
-/* Send an error notice to all users, registered or not */
-void InspIRCd::SendError(const std::string &s)
-{
-       const UserManager::LocalList& list = Users.GetLocalUsers();
-       for (UserManager::LocalList::const_iterator i = list.begin(); i != list.end(); ++i)
-       {
-               User* u = *i;
-               if (u->registered == REG_ALL)
-               {
-                       u->WriteNotice(s);
-               }
-               else
-               {
-                       /* Unregistered connections receive ERROR, not a NOTICE */
-                       u->Write("ERROR :" + s);
-               }
-       }
-}
-
 bool InspIRCd::IsValidMask(const std::string &mask)
 {
        const char* dest = mask.c_str();
@@ -153,7 +127,8 @@ void InspIRCd::StripColor(std::string &sentence)
                else
                        seq = 0;
 
-               if (seq || ((*i == 2) || (*i == 15) || (*i == 22) || (*i == 21) || (*i == 31)))
+               // Strip all control codes too except \001 for CTCP
+               if (seq || ((*i >= 0) && (*i < 32) && (*i != 1)))
                        i = sentence.erase(i);
                else
                        ++i;
@@ -455,28 +430,3 @@ void GenRandomHandler::Call(char *output, size_t max)
                output[i] = random();
 #endif
 }
-
-ModResult OnCheckExemptionHandler::Call(User* user, Channel* chan, const std::string& restriction)
-{
-       unsigned int mypfx = chan->GetPrefixValue(user);
-       char minmode = 0;
-       std::string current;
-
-       irc::spacesepstream defaultstream(ServerInstance->Config->ConfValue("options")->getString("exemptchanops"));
-
-       while (defaultstream.GetToken(current))
-       {
-               std::string::size_type pos = current.find(':');
-               if (pos == std::string::npos)
-                       continue;
-               if (!current.compare(0, pos, restriction))
-                       minmode = current[pos+1];
-       }
-
-       PrefixMode* mh = ServerInstance->Modes->FindPrefixMode(minmode);
-       if (mh && mypfx >= mh->GetPrefixRank())
-               return MOD_RES_ALLOW;
-       if (mh || minmode == '*')
-               return MOD_RES_DENY;
-       return MOD_RES_PASSTHRU;
-}