+2004-09-11 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/ircd_relay.c (server_relay_channel_message,
+ server_relay_channel_notice): Do not allow other servers to send
+ or relay to local channels.
+
+ * ircd/m_wallchops (ms_wallchops): Likewise.
+
+ * ircd/m_wallvoices (ms_wallvoices): Likewise.
+
2004-09-11 Kevin L Mitchell <klmitch@mit.edu>
* ircd/gline.c (gline_add): fix GLINE logging (Bug #750927)
assert(0 != name);
assert(0 != text);
- if (0 == (chptr = FindChannel(name))) {
+ if (IsLocalChannel(name) || 0 == (chptr = FindChannel(name))) {
/*
* XXX - do we need to send this back from a remote server?
*/
assert(0 != name);
assert(0 != text);
- if (0 == (chptr = FindChannel(name)))
+ if (IsLocalChannel(name) || 0 == (chptr = FindChannel(name)))
return;
/*
* This first: Almost never a server/service
if (parc < 3 || !IsUser(sptr))
return 0;
- if ((chptr = FindChannel(parv[1]))) {
+ if (!IsLocalChannel(parv[1]) && (chptr = FindChannel(parv[1]))) {
if (client_can_send_to_channel(sptr, chptr, 0)) {
sendcmdto_channel_butone(sptr, CMD_WALLCHOPS, chptr, cptr,
SKIP_DEAF | SKIP_BURST | SKIP_NONOPS,
if (parc < 3 || !IsUser(sptr))
return 0;
- if ((chptr = FindChannel(parv[1]))) {
+ if (!IsLocalChannel(parv[1]) && (chptr = FindChannel(parv[1]))) {
if (client_can_send_to_channel(sptr, chptr, 0)) {
sendcmdto_channel_butone(sptr, CMD_WALLVOICES, chptr, cptr,
SKIP_DEAF | SKIP_BURST | SKIP_NONVOICES,