summaryrefslogtreecommitdiff
path: root/modules/core
diff options
context:
space:
mode:
authormichael <michael@82007160-df01-0410-b94d-b575c5fd34c7>2013-05-06 18:59:00 +0000
committermichael <michael@82007160-df01-0410-b94d-b575c5fd34c7>2013-05-06 18:59:00 +0000
commit618b92db6e3c90f6bf8afce65f4d5f71474037e3 (patch)
tree31aa4b15353201edb0a78017672a27013849a01a /modules/core
parent1d1309e8d2fbadea9e3acd6c8358a5c937a9d0dd (diff)
- Implemented channel mode +M. Clients that haven't identified their
name with NickServ may not speak in a channel that has this mode set git-svn-id: svn://svn.ircd-hybrid.org/svnroot/ircd-hybrid/branches/8.1.x@1956 82007160-df01-0410-b94d-b575c5fd34c7
Diffstat (limited to 'modules/core')
-rw-r--r--modules/core/m_message.c4
-rw-r--r--modules/core/m_sjoin.c3
2 files changed, 7 insertions, 0 deletions
diff --git a/modules/core/m_message.c b/modules/core/m_message.c
index 5aaf74b..04c34aa 100644
--- a/modules/core/m_message.c
+++ b/modules/core/m_message.c
@@ -434,6 +434,10 @@ msg_channel(int p_or_n, const char *command, struct Client *client_p,
sendto_one(source_p, form_str(ERR_NOCTRLSONCHAN),
ID_or_name(&me, client_p),
ID_or_name(source_p, client_p), chptr->chname, text);
+ else if (result == ERR_NEEDREGGEDNICK)
+ sendto_one(source_p, form_str(ERR_NEEDREGGEDNICK),
+ ID_or_name(&me, client_p),
+ ID_or_name(source_p, client_p), chptr->chname);
else
sendto_one(source_p, form_str(ERR_CANNOTSENDTOCHAN),
ID_or_name(&me, client_p),
diff --git a/modules/core/m_sjoin.c b/modules/core/m_sjoin.c
index 8e10097..9894398 100644
--- a/modules/core/m_sjoin.c
+++ b/modules/core/m_sjoin.c
@@ -146,6 +146,9 @@ ms_sjoin(struct Client *client_p, struct Client *source_p,
case 'r':
mode.mode |= MODE_REGISTERED;
break;
+ case 'M':
+ mode.mode |= MODE_MODREG;
+ break;
case 'O':
mode.mode |= MODE_OPERONLY;
break;