]>
Commit | Line | Data |
---|---|---|
1 | make anti net rider code use better fitting kick message when receiving burst from service outside of net.burst (e.g. Q) | |
2 | ||
3 | diff -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 | } |