252 |
|
struct AccessItem *aconf; |
253 |
|
|
254 |
|
conf = make_conf_item(KLINE_TYPE); |
255 |
< |
aconf = (struct AccessItem *)map_to_conf(conf); |
255 |
> |
aconf = &conf->conf.AccessItem; |
256 |
|
|
257 |
|
DupString(aconf->host, client_p->host); |
258 |
|
DupString(aconf->reason, "idle exceeder"); |
395 |
|
if (aconf->status & CONF_EXEMPTDLINE) |
396 |
|
continue; |
397 |
|
|
398 |
< |
conf = unmap_conf_item(aconf); |
398 |
> |
conf = aconf->conf; |
399 |
|
ban_them(client_p, conf); |
400 |
|
continue; /* and go examine next fd/client_p */ |
401 |
|
} |
411 |
|
continue; |
412 |
|
} |
413 |
|
|
414 |
< |
conf = unmap_conf_item(aconf); |
414 |
> |
conf = aconf->conf; |
415 |
|
ban_them(client_p, conf); |
416 |
|
/* and go examine next fd/client_p */ |
417 |
|
continue; |
429 |
|
continue; |
430 |
|
} |
431 |
|
|
432 |
< |
conf = unmap_conf_item(aconf); |
432 |
> |
conf = aconf->conf; |
433 |
|
ban_them(client_p, conf); |
434 |
|
continue; |
435 |
|
} |
487 |
|
case RKLINE_TYPE: |
488 |
|
case KLINE_TYPE: |
489 |
|
type_string = kline_string; |
490 |
< |
aconf = map_to_conf(conf); |
490 |
> |
aconf = &conf->conf.AccessItem; |
491 |
|
break; |
492 |
|
case DLINE_TYPE: |
493 |
|
type_string = dline_string; |
494 |
< |
aconf = map_to_conf(conf); |
494 |
> |
aconf = &conf->conf.AccessItem; |
495 |
|
break; |
496 |
|
case GLINE_TYPE: |
497 |
|
type_string = gline_string; |
498 |
< |
aconf = map_to_conf(conf); |
498 |
> |
aconf = &conf->conf.AccessItem; |
499 |
|
break; |
500 |
|
case RXLINE_TYPE: |
501 |
|
case XLINE_TYPE: |
502 |
|
type_string = xline_string; |
503 |
< |
xconf = map_to_conf(conf); |
503 |
> |
xconf = &conf->conf.MatchItem; |
504 |
|
++xconf->count; |
505 |
|
break; |
506 |
|
default: |
881 |
|
|
882 |
|
if ((conf = to->serv->sconf) != NULL) |
883 |
|
{ |
884 |
< |
aconf = map_to_conf(conf); |
884 |
> |
aconf = &conf->conf.AccessItem; |
885 |
|
strlcpy(myname, my_name_for_link(aconf), sizeof(myname)); |
886 |
|
} |
887 |
|
else |
1101 |
|
* a rehash in between, the status has been changed to |
1102 |
|
* CONF_ILLEGAL). But only do this if it was a "good" link. |
1103 |
|
*/ |
1104 |
< |
aconf = (struct AccessItem *)map_to_conf(conf); |
1105 |
< |
aclass = (struct ClassItem *)map_to_conf(aconf->class_ptr); |
1104 |
> |
aconf = &conf->conf.AccessItem; |
1105 |
> |
aclass = &((struct ConfItem *)aconf->class_ptr)->conf.ClassItem; |
1106 |
|
aconf->hold = time(NULL); |
1107 |
|
aconf->hold += (aconf->hold - client_p->since > HANGONGOODLINK) ? |
1108 |
|
HANGONRETRYDELAY : ConFreq(aclass); |