summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcertus certus@31f1291d-b8d6-0310-a050-a5561fc1590b <certus certus@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2006-03-01 16:32:40 +0000
committercertus certus@31f1291d-b8d6-0310-a050-a5561fc1590b <certus certus@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2006-03-01 16:32:40 +0000
commitc00fd1215edb20d088a418b70394e957940b5828 (patch)
treedeb129eb835da9a78affdf459fc7ef41a3c42e5d
parent902eedeb6f4b91dd652d1b66df7f9e18b58f8779 (diff)
# BUILD : 1.7.13 (987)
# BUGS : 456 # NOTES : Added fix for unreal's local channels git-svn-id: svn://svn.anope.org/anope/trunk@987 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@712 5417fbe8-f217-4b02-8779-1006273d7864
-rw-r--r--Changes1
-rw-r--r--src/core/cs_forbid.c3
-rw-r--r--src/core/cs_register.c2
-rw-r--r--version.log6
4 files changed, 11 insertions, 1 deletions
diff --git a/Changes b/Changes
index 9766ca3ac..7252f8ea5 100644
--- a/Changes
+++ b/Changes
@@ -19,6 +19,7 @@ Provided by Anope Dev. <dev@anope.org> - 2006
03/01 F Fixed wasteful finduser() call in os_oline.c [#457]
03/01 F Fixed memleak in runDefCon(). [#451]
03/01 F Fixed function type of get_xop_level. [#459]
+03/01 F Prevented registration of UnrealIRCd's local channels. [#456]
Provided by nenolod. <nenolod@nenolod.net> - 2006
02/03 A Support for Charybdis IRCd. [ #00]
diff --git a/src/core/cs_forbid.c b/src/core/cs_forbid.c
index 07d52f174..533da59dc 100644
--- a/src/core/cs_forbid.c
+++ b/src/core/cs_forbid.c
@@ -84,6 +84,9 @@ int do_forbid(User * u)
if (*chan != '#') {
notice_lang(s_ChanServ, u, CHAN_SYMBOL_REQUIRED);
return MOD_CONT;
+ } else if (strchr(chan, ':')) {
+ notice_lang(s_ChanServ, u, CHAN_X_INVALID, chan);
+ return MOD_CONT;
}
if (readonly)
notice_lang(s_ChanServ, u, READ_ONLY_MODE);
diff --git a/src/core/cs_register.c b/src/core/cs_register.c
index 892f51290..e4ce6aa9f 100644
--- a/src/core/cs_register.c
+++ b/src/core/cs_register.c
@@ -95,6 +95,8 @@ int do_register(User * u)
notice_lang(s_ChanServ, u, CHAN_REGISTER_NOT_LOCAL);
} else if (*chan != '#') {
notice_lang(s_ChanServ, u, CHAN_SYMBOL_REQUIRED);
+ } else if (strchr(chan, ':')) {
+ notice_lang(s_ChanServ, u, CHAN_X_INVALID, chan);
} else if (!u->na || !(nc = u->na->nc)) {
notice_lang(s_ChanServ, u, CHAN_MUST_REGISTER_NICK, s_NickServ);
} else if (!nick_recognized(u)) {
diff --git a/version.log b/version.log
index 0532e0b6a..b8ef51b8f 100644
--- a/version.log
+++ b/version.log
@@ -9,10 +9,14 @@ VERSION_MAJOR="1"
VERSION_MINOR="7"
VERSION_PATCH="13"
VERSION_EXTRA="-svn"
-VERSION_BUILD="986"
+VERSION_BUILD="987"
# $Log$
#
+# BUILD : 1.7.13 (987)
+# BUGS : 456
+# NOTES : Added fix for unreal's local channels
+#
# BUILD : 1.7.13 (986)
# BUGS : n/a
# NOTES : Propagated CHAN_X_INVALID to all languages and Changes.lang