* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
- * $Id: m_kick.c 3317 2007-03-28 23:17:06Z jilles $
*/
#include "stdinc.h"
char *comment;
const char *name;
char *p = NULL;
- char *text = rb_strdup("");
+ char text[10];
const char *user;
static char buf[BUFSIZE];
int is_override = 0;
is_override = 1;
else
{
- sendto_one(source_p, form_str(ERR_CHANOPRIVSNEEDED),
+ sendto_one(source_p, ":%s 482 %s %s :You do not have the proper privledges to kick this user",
me.name, source_p->name, name);
return 0;
}
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]",
+ me.name, get_oper_name(source_p), who->name, chptr->chname, comment);
+ }
/* jdc
* - In the case of a server kicking a user (i.e. CLEARCHAN),
use_id(source_p), chptr->chname, use_id(who), comment);
remove_user_from_channel(msptr);
- rb_sprintf(text, "K%s",who->name);
+ rb_snprintf(text, sizeof(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, text, rb_current_time());
+ 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,