Refactor check_one_kline a tiny bit

This commit is contained in:
Ed Kellett 2020-04-15 23:51:39 +01:00
parent baef55657e
commit f53d2f45de
No known key found for this signature in database
GPG key ID: CB9986DEF342FABC

View file

@ -580,9 +580,16 @@ check_one_kline(struct ConfItem *kline)
struct Client *client_p; struct Client *client_p;
rb_dlink_node *ptr; rb_dlink_node *ptr;
rb_dlink_node *next_ptr; rb_dlink_node *next_ptr;
int masktype;
int bits;
struct rb_sockaddr_storage sockaddr;
masktype = parse_netmask(kline->host, (struct sockaddr_storage *)&sockaddr, &bits);
RB_DLINK_FOREACH_SAFE(ptr, next_ptr, lclient_list.head) RB_DLINK_FOREACH_SAFE(ptr, next_ptr, lclient_list.head)
{ {
int matched = 0;
client_p = ptr->data; client_p = ptr->data;
if(IsMe(client_p) || !IsPerson(client_p)) if(IsMe(client_p) || !IsPerson(client_p))
@ -592,29 +599,20 @@ check_one_kline(struct ConfItem *kline)
continue; continue;
/* match one kline */ /* match one kline */
{ switch (masktype) {
int matched = 0; case HM_IPV4:
int masktype; case HM_IPV6:
int bits; if (comp_with_mask_sock((struct sockaddr *)&client_p->localClient->ip,
struct rb_sockaddr_storage sockaddr; (struct sockaddr *)&sockaddr, bits))
matched = 1;
masktype = parse_netmask(kline->host, (struct sockaddr_storage *)&sockaddr, &bits); case HM_HOST:
if (match(kline->host, client_p->orighost))
switch (masktype) { matched = 1;
case HM_IPV4:
case HM_IPV6:
if(comp_with_mask_sock((struct sockaddr *)&client_p->localClient->ip,
(struct sockaddr *)&sockaddr, bits))
matched = 1;
case HM_HOST:
if (match(kline->host, client_p->orighost))
matched = 1;
}
if (!matched)
continue;
} }
if (!matched)
continue;
if(IsExemptKline(client_p)) if(IsExemptKline(client_p))
{ {
sendto_realops_snomask(SNO_GENERAL, L_NETWIDE, sendto_realops_snomask(SNO_GENERAL, L_NETWIDE,