diff options
-rw-r--r-- | src/channel.c | 2 |
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)) |