summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormichael <michael@82007160-df01-0410-b94d-b575c5fd34c7>2013-08-11 11:52:51 +0000
committermichael <michael@82007160-df01-0410-b94d-b575c5fd34c7>2013-08-11 11:52:51 +0000
commit1520d54b2b1443653f9c9dcb8d06a1281ea2baf8 (patch)
tree7121b8425721d7be1f8108948743eaf82e91d9ad /src
parentdca3bdd27fe02518d340e78df92b74867eebbf71 (diff)
- channel.c:can_send(): fixed issue with channel mode +n having
no functionality. Reported by Fawkes git-svn-id: svn://svn.ircd-hybrid.org/svnroot/ircd-hybrid/branches/8.1.x@2442 82007160-df01-0410-b94d-b575c5fd34c7
Diffstat (limited to 'src')
-rw-r--r--src/channel.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/channel.c b/src/channel.c
index 8fc16a5..dfd8b8b 100644
--- a/src/channel.c
+++ b/src/channel.c
@@ -747,6 +747,8 @@ can_send(struct Channel *chptr, struct Client *source_p,
if (ms || (ms = find_channel_link(source_p, chptr)))
if (ms->flags & (CHFL_CHANOP|CHFL_HALFOP|CHFL_VOICE))
return CAN_SEND_OPV;
+ if (!ms && (chptr->mode.mode & MODE_NOPRIVMSGS))
+ return ERR_CANNOTSENDTOCHAN;
if (chptr->mode.mode & MODE_MODERATED)
return ERR_CANNOTSENDTOCHAN;
if ((chptr->mode.mode & MODE_MODREG) && !HasUMode(source_p, UMODE_REGISTERED))