}
static void
-track_kick(struct userNode *kicker, struct userNode *victim, struct chanNode *chan) {
+track_kick(struct userNode *kicker, struct userNode *victim, struct chanNode *chan, UNUSED_ARG(void *extra)) {
if (!track_cfg.enabled) return;
- if (check_track_kick(track_cfg) && ((check_track_user(kicker->nick) || check_track_user(victim->nick))))
+ if (check_track_kick(track_cfg) && check_track_user(victim->nick))
{
+ if (kicker) /* net rider kicks dont have a kicker set */
+ {
+ if (!check_track_user(kicker->nick))
+ return;
+ }
+
UPDATE_TIMESTAMP();
TRACK("$bKICK$b %s from %s by %s", victim->nick, chan->name, (kicker ? kicker->nick : "some server"));
}
}
static void
-track_auth(struct userNode *user, UNUSED_ARG(struct handle_info *old_handle)) {
+track_auth(struct userNode *user, UNUSED_ARG(struct handle_info *old_handle), UNUSED_ARG(void *extra)) {
if (!track_cfg.enabled) return;
if (user->uplink->burst && !track_cfg.show_bursts) return;
if (user->handle_info && (check_track_auth(track_cfg) && check_track_user(user->nick))) {
}
static void
-track_user_mode(struct userNode *user, const char *mode_change) {
+track_user_mode(struct userNode *user, const char *mode_change, UNUSED_ARG(void *extra)) {
if (!track_cfg.enabled) return;
if (user->uplink->burst && !track_cfg.show_bursts) return;
if (!mode_change[1]) return; /* warning there has to be atleast one char in the buffer */
}
static void
-track_channel_mode(struct userNode *who, struct chanNode *channel, char **modes, unsigned int argc)
+track_channel_mode(struct userNode *who, struct chanNode *channel, char **modes, unsigned int argc, UNUSED_ARG(void *extra))
{
if (!track_cfg.enabled) return;
if(who)
}
void
-track_cleanup(void) {
+track_cleanup(UNUSED_ARG(void *extra)) {
track_cfg.enabled = 0;
unreg_del_user_func(track_del_user, NULL);
dict_delete(track_db);
track_db = dict_new();
dict_set_free_keys(track_db, free);
- reg_exit_func(track_cleanup);
+ reg_exit_func(track_cleanup, NULL);
conf_register_reload(track_conf_read);
reg_nick_change_func(track_nick_change, NULL);
reg_join_func(track_join, NULL);
reg_part_func(track_part, NULL);
- reg_kick_func(track_kick);
+ reg_kick_func(track_kick, NULL);
reg_new_user_func(track_new_user, NULL);
reg_del_user_func(track_del_user, NULL);
- reg_auth_func(track_auth);
- reg_channel_mode_func(track_channel_mode);
- reg_user_mode_func(track_user_mode);
+ reg_auth_func(track_auth, NULL);
+ reg_channel_mode_func(track_channel_mode, NULL);
+ reg_user_mode_func(track_user_mode, NULL);
reg_oper_func(track_oper, NULL);
opserv_define_func("TRACK", cmd_track, 800, 0, 0);
opserv_define_func("DELTRACK", cmd_deltrack, 800, 0, 0);