X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fmodules%2Fm_conn_umodes.cpp;h=34ca86db2bfd4a477ae8c469c47979e583bd32ad;hb=b6dbd6caab62bc2c0d11ce5a45d511611eb9c2ef;hp=e77dd3976518458edb393c1e34361165a2b793b0;hpb=01c6d3a23b7dec047eab7d42db057bb211fb8b15;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_conn_umodes.cpp b/src/modules/m_conn_umodes.cpp index e77dd3976..34ca86db2 100644 --- a/src/modules/m_conn_umodes.cpp +++ b/src/modules/m_conn_umodes.cpp @@ -2,8 +2,8 @@ * | Inspire Internet Relay Chat Daemon | * +------------------------------------+ * - * InspIRCd: (C) 2002-2008 InspIRCd Development Team - * See: http://www.inspircd.org/wiki/index.php/Credits + * InspIRCd: (C) 2002-2009 InspIRCd Development Team + * See: http://wiki.inspircd.org/Credits * * This program is free but copyrighted software; see * the file COPYING for details. @@ -22,13 +22,14 @@ class ModuleModesOnConnect : public Module ConfigReader *Conf; public: - ModuleModesOnConnect(InspIRCd* Me) - : Module(Me) + ModuleModesOnConnect(InspIRCd* Me) : Module(Me) { Conf = new ConfigReader(ServerInstance); - Implementation eventlist[] = { I_OnPostConnect, I_OnRehash }; + Implementation eventlist[] = { I_OnUserConnect, I_OnRehash }; ServerInstance->Modules->Attach(eventlist, this, 2); + // for things like +x on connect, important, otherwise we have to resort to config order (bleh) -- w00t + ServerInstance->Modules->SetPriority(this, PRIORITY_FIRST); } @@ -48,7 +49,7 @@ class ModuleModesOnConnect : public Module return Version("$Id$", VF_VENDOR,API_VERSION); } - virtual void OnPostConnect(User* user) + virtual void OnUserConnect(User* user) { if (!IS_LOCAL(user)) return; @@ -63,7 +64,7 @@ class ModuleModesOnConnect : public Module { std::string hostn = Conf->ReadValue("connect","allow",j); /* XXX: Fixme: does not respect port, limit, etc */ - if ((InspIRCd::MatchCIDR(user->GetIPString(),hostn)) || (InspIRCd::Match(user->host,hostn))) + if ((InspIRCd::MatchCIDR(user->GetIPString(),hostn, ascii_case_insensitive_map)) || (InspIRCd::Match(user->host,hostn, ascii_case_insensitive_map))) { std::string ThisModes = Conf->ReadValue("connect","modes",j); if (!ThisModes.empty())