+2004-05-15 Isomer <isomer@undernet.org>
+
+ [Original ChangeLog date: 2004-03-20 -MDP]
+
+ * ircd/m_invite.c: Disallow invites to non existant channels
+
+2004-05-15 David Mansell <splidge@quakenet.org>
+
+ [Original ChangeLog date: 2003-04-26 -MDP]
+
+ * ircd/m_invite.c: let +k users invite into channels they aren't on.
+
2004-05-15 hikari <shadow@undernet.org>
[Original ChangeLog date: 2003-07-13 -MDP]
return 0;
if (!(chptr = FindChannel(parv[2]))) {
- if (IsLocalChannel(parv[2]))
- {
- send_reply(sptr, ERR_NOTONCHANNEL, parv[2]);
- return 0;
- }
-
- /* Do not disallow to invite to non-existant #channels, otherwise they
- would simply first be created, causing only MORE bandwidth usage. */
-
- if (check_target_limit(sptr, acptr, cli_name(acptr), 0))
- return 0;
-
- send_reply(sptr, RPL_INVITING, cli_name(acptr), parv[2]);
-
- if (cli_user(acptr)->away)
- send_reply(sptr, RPL_AWAY, cli_name(acptr), cli_user(acptr)->away);
-
- sendcmdto_one(sptr, CMD_INVITE, acptr, "%s :%s", cli_name(acptr), parv[2]);
-
+ send_reply(sptr, ERR_NOTONCHANNEL, parv[2]);
return 0;
}
protocol_violation(sptr,"Too few arguments to invite");
return need_more_params(sptr,"INVITE");
}
- if ('#' != *parv[2]) {
+ if (!IsGlobalChannel(parv[2])) {
/*
* should not be sent
*/
return 0;
}
- if (!find_channel_member(sptr, chptr)) {
+ if (!IsChannelService(sptr) && !find_channel_member(sptr, chptr)) {
send_reply(sptr, ERR_NOTONCHANNEL, chptr->chname);
return 0;
}