X-Git-Url: https://jfr.im/git/irc/rqf/shadowircd.git/blobdiff_plain/d3b90aaad30cb5d29ffdb0dab22b8ced5254db31..34d8ef4d14dfcef13f8aab3746b30c6f8cacb4a1:/modules/core/m_kick.c diff --git a/modules/core/m_kick.c b/modules/core/m_kick.c index aa24d9c..937b05b 100644 --- a/modules/core/m_kick.c +++ b/modules/core/m_kick.c @@ -68,6 +68,7 @@ m_kick(struct Client *client_p, struct Client *source_p, int parc, const char *p char *comment; const char *name; char *p = NULL; + char *text = rb_strdup(""); const char *user; static char buf[BUFSIZE]; int is_override = 0; @@ -204,9 +205,14 @@ m_kick(struct Client *client_p, struct Client *source_p, int parc, const char *p comment[REASONLEN] = '\0'; if(is_override) - sendto_realops_snomask(SNO_GENERAL, L_NETWIDE, + { + sendto_wallops_flags(UMODE_WALLOP, &me, "%s is overriding KICK [%s] on [%s] [%s]", get_oper_name(source_p), who->name, chptr->chname, comment); + sendto_server(NULL, chptr, NOCAPS, NOCAPS, + ":%s WALLOPS :%s is overriding KICK [%s] on [%s] [%s]", + use_id(source_p), get_oper_name(source_p), who->name, chptr->chname, comment); + } /* jdc * - In the case of a server kicking a user (i.e. CLEARCHAN), @@ -229,9 +235,11 @@ m_kick(struct Client *client_p, struct Client *source_p, int parc, const char *p use_id(source_p), chptr->chname, use_id(who), comment); remove_user_from_channel(msptr); + rb_sprintf(text, "K%s", who->id); + /* we don't need to track NOREJOIN stuff unless it's our client being kicked */ - if(MyClient(source_p) && chptr->mode.mode & MODE_NOREJOIN) - channel_metadata_time_add(chptr, "KICKNOREJOIN", rb_current_time(), who->id); + if(MyClient(who) && chptr->mode.mode & MODE_NOREJOIN) + channel_metadata_time_add(chptr, text, rb_current_time(), "KICKNOREJOIN"); } else if (MyClient(source_p)) sendto_one_numeric(source_p, ERR_USERNOTINCHANNEL,