]> jfr.im git - irc/quakenet/snircd-patchqueue.git/blame - netriderkickoutsideburst.patch
showumodehtoclients: removed unneeded brackets that were added earlier
[irc/quakenet/snircd-patchqueue.git] / netriderkickoutsideburst.patch
CommitLineData
10886844 1make anti net rider code use better fitting kick message when receiving burst from service outside of net.burst (e.g. Q)
2
3diff -r 6503d2edd3c3 ircd/m_burst.c
4--- a/ircd/m_burst.c Thu Mar 18 11:04:02 2010 +0100
5+++ b/ircd/m_burst.c Thu Mar 18 11:47:15 2010 +0100
6@@ -212,6 +212,7 @@
7 unsigned int parse_flags = (MODE_PARSE_FORCE | MODE_PARSE_BURST);
8 int param, nickpos = 0, banpos = 0;
9 char modestr[BUFSIZE], nickstr[BUFSIZE], banstr[BUFSIZE];
10+ char *kickmsg = "Net Rider";
11
12 if (parc < 3)
13 return protocol_violation(sptr,"Too few parameters for BURST");
14@@ -294,6 +295,14 @@
15 {
16 /* Clear any outstanding rogue invites */
17 mode_invite_clear(chptr);
18+
19+ /* burst is from a services server outside of netburst
20+ * or from a user on one, unusual, but not impossible, handle just in case
21+ */
22+ if ((IsServer(sptr) && !IsBurst(sptr) && IsService(sptr)) ||
23+ (!IsServer(sptr) && !IsBurst(cli_user(sptr)->server) && IsService(cli_user(sptr)->server)))
24+ kickmsg = "Channel Registered";
25+
26 for (member = chptr->members; member; member = nmember)
27 {
28 nmember = member->next_member;
29@@ -313,8 +322,8 @@
30 && (!(check_modes & MODE_INVITEONLY) || IsAnOper(member->user))
31 && (!(check_modes & MODE_REGONLY) || IsAccount(member->user)))
32 continue;
33- sendcmdto_serv_butone(&me, CMD_KICK, NULL, "%H %C :Net Rider", chptr, member->user);
34- sendcmdto_channel_butserv_butone(&his, CMD_KICK, chptr, NULL, 0, "%H %C :Net Rider", chptr, member->user);
35+ sendcmdto_serv_butone(&me, CMD_KICK, NULL, "%H %C :%s", chptr, member->user, kickmsg);
36+ sendcmdto_channel_butserv_butone(&his, CMD_KICK, chptr, NULL, 0, "%H %C :%s", chptr, member->user, kickmsg);
37 make_zombie(member, member->user, &me, &me, chptr);
38 }
39 }