aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGravatar w00t2008-01-11 21:57:52 +0000
committerGravatar w00t2008-01-11 21:57:52 +0000
commit7a320a00dfd5f69dedda1e8697ced03cebb71717 (patch)
tree38a01019e10243cae7b42f207fec644edc2349ae /src
parentHeader update: 2007 -> 2008 (diff)
Backport <goodchan>: Explicitly allow channels denied by <badchan>
git-svn-id: http://svn.inspircd.org/repository/branches/1_1_stable@8698 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src')
-rw-r--r--src/modules/m_denychans.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/modules/m_denychans.cpp b/src/modules/m_denychans.cpp
index 738a58103..371c58cac 100644
--- a/src/modules/m_denychans.cpp
+++ b/src/modules/m_denychans.cpp
@@ -68,11 +68,21 @@ class ModuleDenyChannels : public Module
else
{
std::string reason = Conf->ReadValue("badchan","reason",j);
+
+ for (int j = 0; j < Conf->Enumerate("goodchan"); j++)
+ {
+ if (match(cname, Conf->ReadValue("goodchan", "name", j).c_str()))
+ {
+ return 0;
+ }
+ }
+
user->WriteServ("926 %s %s :Channel %s is forbidden: %s",user->nick,cname,cname,reason.c_str());
return 1;
}
}
}
+
return 0;
}
};