summaryrefslogtreecommitdiff
path: root/src
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 /src
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 'src')
-rw-r--r--src/channel.c2
-rw-r--r--src/channel_mode.c3
-rw-r--r--src/numeric.c2
3 files changed, 4 insertions, 3 deletions
diff --git a/src/channel.c b/src/channel.c
index 93d9260..d7f524b 100644
--- a/src/channel.c
+++ b/src/channel.c
@@ -751,7 +751,7 @@ can_send(struct Channel *chptr, struct Client *source_p,
return CAN_SEND_OPV;
if (chptr->mode.mode & MODE_MODERATED)
return ERR_CANNOTSENDTOCHAN;
- if ((chptr->mode.mode & MODE_REGONLY) && !HasUMode(source_p, UMODE_REGISTERED))
+ if ((chptr->mode.mode & MODE_MODREG) && !HasUMode(source_p, UMODE_REGISTERED))
return ERR_NEEDREGGEDNICK;
/* cache can send if banned */
diff --git a/src/channel_mode.c b/src/channel_mode.c
index d1e83c5..4cf96e9 100644
--- a/src/channel_mode.c
+++ b/src/channel_mode.c
@@ -329,6 +329,7 @@ const struct mode_letter chan_modes[] = {
{ MODE_REGISTERED, 'r' },
{ MODE_SECRET, 's' },
{ MODE_TOPICLIMIT, 't' },
+ { MODE_MODREG, 'M' },
{ MODE_OPERONLY, 'O' },
{ MODE_REGONLY, 'R' },
{ MODE_SSLONLY, 'S' },
@@ -1408,7 +1409,7 @@ static struct ChannelMode ModeTable[255] =
{chm_nosuch, NULL}, /* J */
{chm_nosuch, NULL}, /* K */
{chm_nosuch, NULL}, /* L */
- {chm_nosuch, NULL}, /* M */
+ {chm_simple, (void *)MODE_MODREG}, /* M */
{chm_nosuch, NULL}, /* N */
{chm_operonly, (void *) MODE_OPERONLY}, /* O */
{chm_nosuch, NULL}, /* P */
diff --git a/src/numeric.c b/src/numeric.c
index b1ee134..a4849d2 100644
--- a/src/numeric.c
+++ b/src/numeric.c
@@ -31,7 +31,7 @@ static const char *replies[] = {
/* 001 RPL_WELCOME */ ":%s 001 %s :Welcome to the %s Internet Relay Chat Network %s!%s@%s",
/* 002 RPL_YOURHOST */ ":%s 002 %s :Your host is %s, running version %s",
/* 003 RPL_CREATED */ ":%s 003 %s :This server was created %s",
-/* 004 RPL_MYINFO */ ":%s 004 %s %s %s %s bciklmnoprstveIORS bkloveI",
+/* 004 RPL_MYINFO */ ":%s 004 %s %s %s %s bciklmnoprstveIMORS bkloveI",
/* 005 RPL_ISUPPORT */ ":%s 005 %s %s :are supported by this server",
/* 006 */ NULL,
/* 007 */ NULL,