+
+ if (aconf == NULL)
+ return false;
+
+ /* allow klines to be duplicated by longer ones */
+ if ((aconf->flags & CONF_FLAGS_TEMPORARY) &&
+ (tkline == 0 || tkline > aconf->hold - rb_current_time()))
+ return false;
+
+ reason = aconf->passwd ? aconf->passwd : "<No Reason>";
+
+ sendto_one_notice(source_p,
+ ":[%s@%s] already K-Lined by [%s@%s] - %s",
+ luser, lhost, aconf->user, aconf->host, reason);
+ return true;
+}
+
+static void
+remove_superseded_klines(const char *user, const char *host)
+{
+ struct ConfItem *aconf;
+
+ while (aconf = find_exact_conf_by_address_filtered(host, CONF_KILL, user, is_temporary_kline), aconf != NULL)