Refactor check_one_kline a tiny bit
This commit is contained in:
parent
baef55657e
commit
f53d2f45de
1 changed files with 19 additions and 21 deletions
|
@ -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,
|
||||||
|
|
Loading…
Reference in a new issue