| 291 |
|
sizeof(struct MatchItem)); |
| 292 |
|
dlinkAdd(conf, &conf->node, &xconf_items); |
| 293 |
|
break; |
| 294 |
< |
|
| 294 |
> |
#ifdef HAVE_LIBPCRE |
| 295 |
|
case RXLINE_TYPE: |
| 296 |
|
conf = (struct ConfItem *)MyMalloc(sizeof(struct ConfItem) + |
| 297 |
|
sizeof(struct MatchItem)); |
| 305 |
|
aconf->status = CONF_KLINE; |
| 306 |
|
dlinkAdd(conf, &conf->node, &rkconf_items); |
| 307 |
|
break; |
| 308 |
< |
|
| 308 |
> |
#endif |
| 309 |
|
case CLUSTER_TYPE: |
| 310 |
|
conf = (struct ConfItem *)MyMalloc(sizeof(struct ConfItem)); |
| 311 |
|
dlinkAdd(conf, &conf->node, &cluster_items); |
| 463 |
|
dlinkDelete(&conf->node, &xconf_items); |
| 464 |
|
MyFree(conf); |
| 465 |
|
break; |
| 466 |
< |
|
| 466 |
> |
#ifdef HAVE_LIBPCRE |
| 467 |
|
case RKLINE_TYPE: |
| 468 |
|
aconf = map_to_conf(conf); |
| 469 |
|
MyFree(aconf->regexuser); |
| 486 |
|
dlinkDelete(&conf->node, &rxconf_items); |
| 487 |
|
MyFree(conf); |
| 488 |
|
break; |
| 489 |
< |
|
| 489 |
> |
#endif |
| 490 |
|
case NRESV_TYPE: |
| 491 |
|
match_item = map_to_conf(conf); |
| 492 |
|
MyFree(match_item->user); |
| 613 |
|
} |
| 614 |
|
break; |
| 615 |
|
|
| 616 |
+ |
#ifdef HAVE_LIBPCRE |
| 617 |
|
case RXLINE_TYPE: |
| 618 |
|
DLINK_FOREACH(ptr, rxconf_items.head) |
| 619 |
|
{ |
| 642 |
|
aconf->reason, aconf->oper_reason ? aconf->oper_reason : ""); |
| 643 |
|
} |
| 644 |
|
break; |
| 645 |
+ |
#endif |
| 646 |
|
|
| 647 |
|
case ULINE_TYPE: |
| 648 |
|
DLINK_FOREACH(ptr, uconf_items.head) |
| 787 |
|
case CRESV_TYPE: |
| 788 |
|
case NRESV_TYPE: |
| 789 |
|
case CLUSTER_TYPE: |
| 790 |
+ |
default: |
| 791 |
|
break; |
| 792 |
|
} |
| 793 |
|
} |
| 1575 |
|
|
| 1576 |
|
switch (type) |
| 1577 |
|
{ |
| 1578 |
< |
case RXLINE_TYPE: |
| 1578 |
> |
#ifdef HAVE_LIBPCRE |
| 1579 |
> |
case RXLINE_TYPE: |
| 1580 |
|
DLINK_FOREACH(ptr, list_p->head) |
| 1581 |
|
{ |
| 1582 |
|
conf = ptr->data; |
| 1586 |
|
return conf; |
| 1587 |
|
} |
| 1588 |
|
break; |
| 1589 |
< |
|
| 1589 |
> |
#endif |
| 1590 |
|
case XLINE_TYPE: |
| 1591 |
|
case ULINE_TYPE: |
| 1592 |
|
case NRESV_TYPE: |
| 2060 |
|
static struct AccessItem * |
| 2061 |
|
find_regexp_kline(const char *uhi[]) |
| 2062 |
|
{ |
| 2063 |
+ |
#ifdef HAVE_LIBPCRE |
| 2064 |
|
const dlink_node *ptr = NULL; |
| 2065 |
|
|
| 2066 |
|
DLINK_FOREACH(ptr, rkconf_items.head) |
| 2075 |
|
!ircd_pcre_exec(aptr->regexhost, uhi[2]))) |
| 2076 |
|
return aptr; |
| 2077 |
|
} |
| 2078 |
< |
|
| 2078 |
> |
#endif |
| 2079 |
|
return NULL; |
| 2080 |
|
} |
| 2081 |
|
|
| 2476 |
|
*/ |
| 2477 |
|
rebuild_isupport_message_line(); |
| 2478 |
|
|
| 2479 |
< |
parse_conf_file(KLINE_TYPE, cold); |
| 2479 |
> |
#ifdef HAVE_LIBPCRE |
| 2480 |
|
parse_conf_file(RKLINE_TYPE, cold); |
| 2481 |
+ |
parse_conf_file(RXLINE_TYPE, cold); |
| 2482 |
+ |
#endif |
| 2483 |
+ |
parse_conf_file(KLINE_TYPE, cold); |
| 2484 |
|
parse_conf_file(DLINE_TYPE, cold); |
| 2485 |
|
parse_conf_file(XLINE_TYPE, cold); |
| 2478 |
– |
parse_conf_file(RXLINE_TYPE, cold); |
| 2486 |
|
parse_conf_file(NRESV_TYPE, cold); |
| 2487 |
|
parse_conf_file(CRESV_TYPE, cold); |
| 2488 |
|
} |