sbin/pfctl/parse.y
229
struct redirection *rdr;
sbin/pfctl/parse.y
2542
if (filter_opts.nat.rdr) {
sbin/pfctl/parse.y
2546
filter_opts.nat.rdr = $2;
sbin/pfctl/parse.y
2551
if (filter_opts.nat.rdr) {
sbin/pfctl/parse.y
2560
filter_opts.nat.rdr = $4;
sbin/pfctl/parse.y
2563
filter_opts.rdr.rdr =
sbin/pfctl/parse.y
2565
bzero(&filter_opts.rdr.pool_opts,
sbin/pfctl/parse.y
2566
sizeof(filter_opts.rdr.pool_opts));
sbin/pfctl/parse.y
2570
if (filter_opts.nat.rdr) {
sbin/pfctl/parse.y
2585
filter_opts.nat.rdr = $4;
sbin/pfctl/parse.y
2588
filter_opts.rdr.af = $2;
sbin/pfctl/parse.y
2589
filter_opts.rdr.rdr = $7;
sbin/pfctl/parse.y
2590
memcpy(&filter_opts.rdr.pool_opts, &$8,
sbin/pfctl/parse.y
2591
sizeof(filter_opts.rdr.pool_opts));
sbin/pfctl/parse.y
2595
if (filter_opts.rdr.rdr) {
sbin/pfctl/parse.y
2599
filter_opts.rdr.rdr = $2;
sbin/pfctl/parse.y
2600
memcpy(&filter_opts.rdr.pool_opts, &$3,
sbin/pfctl/parse.y
2601
sizeof(filter_opts.rdr.pool_opts));
sbin/pfctl/parse.y
2604
if (filter_opts.nat.rdr) {
sbin/pfctl/parse.y
2608
filter_opts.nat.rdr = $2;
sbin/pfctl/parse.y
287
struct redirspec rdr;
sbin/pfctl/parse.y
4215
filter_opts.rroute.rdr = redir;
sbin/pfctl/parse.y
4436
r->rdr.addr.type != PF_ADDR_NONE) &&
sbin/pfctl/parse.y
4442
r->rdr.addr.type != PF_ADDR_NONE)) {
sbin/pfctl/parse.y
4895
if (!rs || !rs->rdr || rs->rdr->host == NULL) {
sbin/pfctl/parse.y
4903
for (h = rs->rdr->host; h != NULL; h = h->next) {
sbin/pfctl/parse.y
5050
if (!rs || !rs->rdr)
sbin/pfctl/parse.y
5053
rpool->proxy_port[0] = ntohs(rs->rdr->rport.a);
sbin/pfctl/parse.y
5056
if (!rs->rdr->rport.b && rs->rdr->rport.t) {
sbin/pfctl/parse.y
5057
rpool->proxy_port[1] = ntohs(rs->rdr->rport.a) +
sbin/pfctl/parse.y
5060
if (validate_range(rs->rdr->rport.t, rs->rdr->rport.a,
sbin/pfctl/parse.y
5061
rs->rdr->rport.b)) {
sbin/pfctl/parse.y
5066
rpool->port_op = rs->rdr->rport.t;
sbin/pfctl/parse.y
5067
rpool->proxy_port[1] = ntohs(rs->rdr->rport.b);
sbin/pfctl/parse.y
5070
rpool->proxy_port[1] = ntohs(rs->rdr->rport.b);
sbin/pfctl/parse.y
5085
(disallow_table(rs->rdr->host,
sbin/pfctl/parse.y
5087
disallow_alias(rs->rdr->host,
sbin/pfctl/parse.y
5120
struct redirspec *nat, struct redirspec *rdr, struct redirspec *rroute,
sbin/pfctl/parse.y
5165
error += collapse_redirspec(&r->rdr, r, rdr, 0);
sbin/pfctl/parse.y
5296
if (nat && nat->rdr && nat->binat) {
sbin/pfctl/parse.y
5338
error += apply_redirspec(&r->rdr, r, rdr, 1, dst_port);
sbin/pfctl/parse.y
5351
if (!error && nat && nat->rdr && nat->binat) {
sbin/pfctl/parse.y
5372
if ((binat.rdr =
sbin/pfctl/parse.y
5373
calloc(1, sizeof(*binat.rdr))) == NULL)
sbin/pfctl/parse.y
5375
bcopy(nat->rdr, binat.rdr, sizeof(*binat.rdr));
sbin/pfctl/parse.y
5379
binat.rdr->host = srch;
sbin/pfctl/parse.y
5408
if (nat && nat->rdr)
sbin/pfctl/parse.y
5409
FREE_LIST(struct node_host, nat->rdr->host);
sbin/pfctl/parse.y
5410
if (rdr && rdr->rdr)
sbin/pfctl/parse.y
5411
FREE_LIST(struct node_host, rdr->rdr->host);
sbin/pfctl/pfctl_optimize.c
136
PF_RULE_FIELD(rdr, BREAK),
sbin/pfctl/pfctl_parser.c
1197
if (r->rdr.addr.type != PF_ADDR_NONE) {
sbin/pfctl/pfctl_parser.c
1199
print_pool(&r->rdr, r->rdr.proxy_port[0],
sbin/pfctl/pfctl_parser.c
1200
r->rdr.proxy_port[1], r->naf ? r->naf : r->af,
sbin/pfctl/pfctl_parser.c
1210
if (!anchor_call[0] && r->rdr.addr.type != PF_ADDR_NONE) {
sbin/pfctl/pfctl_parser.c
1212
print_pool(&r->rdr, r->rdr.proxy_port[0],
sbin/pfctl/pfctl_parser.c
1213
r->rdr.proxy_port[1], r->af, PF_POOL_RDR, verbose);
sys/net/pf_ioctl.c
2367
rule->rdr.kif = pf_kif_setup(rule->rdr.kif);
sys/net/pf_ioctl.c
2383
if (pf_addr_setup(ruleset, &rule->rdr.addr, rule->af))
sys/net/pf_ioctl.c
2484
pr->rule.rdr.kif = NULL;
sys/net/pf_ioctl.c
2498
pf_addr_copyout(&pr->rule.rdr.addr);
sys/net/pf_ioctl.c
2606
newrule->rdr.kif = pf_kif_setup(newrule->rdr.kif);
sys/net/pf_ioctl.c
2627
if (pf_addr_setup(ruleset, &newrule->rdr.addr,
sys/net/pf_ioctl.c
288
pf_default_rule.rdr.addr.type = PF_ADDR_NONE;
sys/net/pf_ioctl.c
354
pfi_kif_free(rule->rdr.kif);
sys/net/pf_ioctl.c
373
pf_tbladdr_remove(&rule->rdr.addr);
sys/net/pf_ioctl.c
393
pfi_dynaddr_remove(&rule->rdr.addr);
sys/net/pf_ioctl.c
399
pf_tbladdr_remove(&rule->rdr.addr);
sys/net/pf_ioctl.c
4067
pf_pool_copyin(&from->rdr, &to->rdr);
sys/net/pf_ioctl.c
407
pfi_kif_unref(rule->rdr.kif, PFI_KIF_REF_RULE);
sys/net/pf_ioctl.c
4070
if (pf_validate_range(to->rdr.port_op, to->rdr.proxy_port,
sys/net/pf_ioctl.c
4078
to->rdr.kif = (to->rdr.ifname[0]) ?
sys/net/pf_ioctl.c
4079
pfi_kif_alloc(to->rdr.ifname, M_WAITOK) : NULL;
sys/net/pf_lb.c
721
if (r->rdr.addr.type != PF_ADDR_NONE) {
sys/net/pf_lb.c
723
&r->rdr, PF_SN_RDR))
sys/net/pf_lb.c
725
if ((r->rdr.opts & PF_POOL_TYPEMASK) == PF_POOL_BITMASK)
sys/net/pf_lb.c
726
pf_poolmask(&naddr, &naddr, &r->rdr.addr.v.a.mask,
sys/net/pf_lb.c
730
if (r->rdr.proxy_port[1]) {
sys/net/pf_lb.c
734
div = r->rdr.proxy_port[1] - r->rdr.proxy_port[0] + 1;
sys/net/pf_lb.c
738
r->rdr.proxy_port[0];
sys/net/pf_lb.c
744
} else if (r->rdr.proxy_port[0])
sys/net/pf_lb.c
745
nport = htons(r->rdr.proxy_port[0]);
sys/net/pf_lb.c
747
if ((*nr) != NULL && (*nr)->rdr.addr.type != PF_ADDR_NONE &&
sys/net/pf_lb.c
748
((*nr)->rdr.opts & PF_POOL_TYPEMASK) ==
sys/net/pf_lb.c
750
pf_pool_states_decrease_addr(&(*nr)->rdr, pd->af,
sys/net/pf_lb.c
773
r->rdr.addr.type == PF_ADDR_NONE ? "nat" : "rdr");
sys/net/pf_lb.c
830
if (r->rdr.addr.type != PF_ADDR_NONE) {
sys/net/pf_lb.c
832
&r->rdr, PF_SN_RDR))
sys/net/pf_lb.c
834
if (r->rdr.proxy_port[0])
sys/net/pf_lb.c
835
pd->ndport = htons(r->rdr.proxy_port[0]);
sys/net/pf_lb.c
840
&r->rdr.addr.v.a.mask);
sys/net/pf_lb.c
847
&r->rdr.addr.v.a.mask, NULL);
sys/net/pf_lb.c
881
r->rdr.addr.type == PF_ADDR_NONE ? "nat" : "rdr",
sys/net/pf_lb.c
906
if (cur->natrule.ptr->rdr.addr.type != PF_ADDR_NONE)
sys/net/pf_lb.c
907
rdrpl = &cur->natrule.ptr->rdr;
sys/net/pf_lb.c
917
ri->r->rdr.addr.type != PF_ADDR_NONE)
sys/net/pf_lb.c
918
rdrpl = &ri->r->rdr;
sys/net/pfvar.h
518
struct pf_pool rdr;
usr.sbin/ftp-proxy/filter.c
100
if (!src || !dst || !d_port || !rdr || !rdr_port ||
usr.sbin/ftp-proxy/filter.c
101
(src->sa_family != rdr->sa_family)) {
usr.sbin/ftp-proxy/filter.c
109
if (add_addr(rdr, &pfr.rule.rdr) == -1)
usr.sbin/ftp-proxy/filter.c
115
pfr.rule.rdr.proxy_port[0] = rdr_port;
usr.sbin/ftp-proxy/filter.c
209
pfr.rule.rdr.addr.type = PF_ADDR_NONE;
usr.sbin/ftp-proxy/filter.c
98
u_int16_t d_port, struct sockaddr *rdr, u_int16_t rdr_port, int d_rd)
usr.sbin/relayctl/relayctl.c
349
struct rdr rdr;
usr.sbin/relayctl/relayctl.c
362
if (imsg_get_data(imsg, &rdr, sizeof(rdr)) == -1)
usr.sbin/relayctl/relayctl.c
364
rdr.conf.name[sizeof(rdr.conf.name) - 1] = '\0';
usr.sbin/relayctl/relayctl.c
366
rdr.conf.id, "redirect", rdr.conf.name, "",
usr.sbin/relayctl/relayctl.c
367
print_rdr_status(rdr.conf.flags));
usr.sbin/relayd/agentx_control.c
176
struct rdr *agentxctl_rdr_byidx(uint32_t, enum agentx_request_type);
usr.sbin/relayd/agentx_control.c
523
struct rdr *
usr.sbin/relayd/agentx_control.c
526
struct rdr *rdr;
usr.sbin/relayd/agentx_control.c
528
TAILQ_FOREACH(rdr, env->sc_rdrs, entry) {
usr.sbin/relayd/agentx_control.c
529
if (rdr->conf.id == instanceidx) {
usr.sbin/relayd/agentx_control.c
532
return rdr;
usr.sbin/relayd/agentx_control.c
534
return TAILQ_NEXT(rdr, entry);
usr.sbin/relayd/agentx_control.c
535
} else if (rdr->conf.id > instanceidx) {
usr.sbin/relayd/agentx_control.c
538
return rdr;
usr.sbin/relayd/agentx_control.c
548
struct rdr *rdr;
usr.sbin/relayd/agentx_control.c
550
rdr = agentxctl_rdr_byidx(agentx_varbind_get_index_integer(sav,
usr.sbin/relayd/agentx_control.c
552
if (rdr == NULL || rdr->conf.id > INT32_MAX) {
usr.sbin/relayd/agentx_control.c
557
rdr->conf.id);
usr.sbin/relayd/agentx_control.c
559
agentx_varbind_integer(sav, rdr->conf.id);
usr.sbin/relayd/agentx_control.c
561
if (rdr->conf.flags & F_DISABLE)
usr.sbin/relayd/agentx_control.c
563
else if (rdr->conf.flags & F_DOWN)
usr.sbin/relayd/agentx_control.c
565
else if (rdr->conf.flags & F_BACKUP)
usr.sbin/relayd/agentx_control.c
570
agentx_varbind_string(sav, rdr->conf.name);
usr.sbin/relayd/agentx_control.c
572
agentx_varbind_counter64(sav, rdr->stats.cnt);
usr.sbin/relayd/agentx_control.c
574
agentx_varbind_gauge32(sav, rdr->stats.avg);
usr.sbin/relayd/agentx_control.c
576
agentx_varbind_gauge32(sav, rdr->stats.last);
usr.sbin/relayd/agentx_control.c
578
agentx_varbind_gauge32(sav, rdr->stats.avg_hour);
usr.sbin/relayd/agentx_control.c
580
agentx_varbind_gauge32(sav, rdr->stats.last_hour);
usr.sbin/relayd/agentx_control.c
582
agentx_varbind_gauge32(sav, rdr->stats.avg_day);
usr.sbin/relayd/agentx_control.c
584
agentx_varbind_gauge32(sav, rdr->stats.last_day);
usr.sbin/relayd/config.c
141
struct rdr *rdr;
usr.sbin/relayd/config.c
160
while ((rdr = TAILQ_FIRST(env->sc_rdrs)) != NULL) {
usr.sbin/relayd/config.c
161
TAILQ_REMOVE(env->sc_rdrs, rdr, entry);
usr.sbin/relayd/config.c
162
while ((virt = TAILQ_FIRST(&rdr->virts)) != NULL) {
usr.sbin/relayd/config.c
163
TAILQ_REMOVE(&rdr->virts, virt, entry);
usr.sbin/relayd/config.c
166
free(rdr);
usr.sbin/relayd/config.c
434
config_setrdr(struct relayd *env, struct rdr *rdr)
usr.sbin/relayd/config.c
446
rdr->conf.name, ps->ps_title[id]);
usr.sbin/relayd/config.c
449
&rdr->conf, sizeof(rdr->conf));
usr.sbin/relayd/config.c
451
TAILQ_FOREACH(virt, &rdr->virts, entry) {
usr.sbin/relayd/config.c
452
virt->rdrid = rdr->conf.id;
usr.sbin/relayd/config.c
464
struct rdr *rdr;
usr.sbin/relayd/config.c
466
if ((rdr = calloc(1, sizeof(*rdr))) == NULL)
usr.sbin/relayd/config.c
469
if (imsg_get_data(imsg, &rdr->conf, sizeof(rdr->conf)) == -1) {
usr.sbin/relayd/config.c
471
free(rdr);
usr.sbin/relayd/config.c
475
if ((rdr->table = table_find(env, rdr->conf.table_id)) == NULL) {
usr.sbin/relayd/config.c
477
free(rdr);
usr.sbin/relayd/config.c
480
if ((rdr->backup = table_find(env, rdr->conf.backup_id)) == NULL) {
usr.sbin/relayd/config.c
481
rdr->conf.backup_id = EMPTY_TABLE;
usr.sbin/relayd/config.c
482
rdr->backup = &env->sc_empty_table;
usr.sbin/relayd/config.c
485
TAILQ_INIT(&rdr->virts);
usr.sbin/relayd/config.c
486
TAILQ_INSERT_TAIL(env->sc_rdrs, rdr, entry);
usr.sbin/relayd/config.c
492
rdr->conf.name);
usr.sbin/relayd/config.c
500
struct rdr *rdr;
usr.sbin/relayd/config.c
512
if ((rdr = rdr_find(env, virt->rdrid)) == NULL) {
usr.sbin/relayd/config.c
518
TAILQ_INSERT_TAIL(&rdr->virts, virt, entry);
usr.sbin/relayd/config.c
522
rdr->conf.name);
usr.sbin/relayd/parse.y
111
static struct rdr *rdr = NULL;
usr.sbin/relayd/parse.y
211
| grammar rdr '\n'
usr.sbin/relayd/parse.y
3042
rdr = NULL;
usr.sbin/relayd/parse.y
473
rdr : REDIRECT STRING {
usr.sbin/relayd/parse.y
474
struct rdr *srv;
usr.sbin/relayd/parse.y
510
rdr = srv;
usr.sbin/relayd/parse.y
512
if (rdr->table == NULL) {
usr.sbin/relayd/parse.y
514
rdr->conf.name);
usr.sbin/relayd/parse.y
517
if (TAILQ_EMPTY(&rdr->virts)) {
usr.sbin/relayd/parse.y
519
rdr->conf.name);
usr.sbin/relayd/parse.y
523
if (rdr->backup == NULL) {
usr.sbin/relayd/parse.y
524
rdr->conf.backup_id =
usr.sbin/relayd/parse.y
526
rdr->backup = &conf->sc_empty_table;
usr.sbin/relayd/parse.y
527
} else if (rdr->backup->conf.port !=
usr.sbin/relayd/parse.y
528
rdr->table->conf.port) {
usr.sbin/relayd/parse.y
531
rdr->conf.name);
usr.sbin/relayd/parse.y
534
if (!(rdr->conf.flags & F_DISABLE))
usr.sbin/relayd/parse.y
535
rdr->conf.flags |= F_ADD;
usr.sbin/relayd/parse.y
536
TAILQ_INSERT_TAIL(conf->sc_rdrs, rdr, entry);
usr.sbin/relayd/parse.y
538
rdr = NULL;
usr.sbin/relayd/parse.y
548
memcpy(&rdr->conf.key,
usr.sbin/relayd/parse.y
549
hashkey, sizeof(rdr->conf.key));
usr.sbin/relayd/parse.y
550
rdr->conf.flags |= F_HASHKEY;
usr.sbin/relayd/parse.y
590
if (rdr->backup) {
usr.sbin/relayd/parse.y
595
if (rdr->table) {
usr.sbin/relayd/parse.y
596
rdr->backup = $3;
usr.sbin/relayd/parse.y
597
rdr->conf.backup_id = $3->conf.id;
usr.sbin/relayd/parse.y
598
if (dstmode != rdr->conf.mode) {
usr.sbin/relayd/parse.y
600
"different mode", rdr->conf.name);
usr.sbin/relayd/parse.y
604
rdr->table = $3;
usr.sbin/relayd/parse.y
605
rdr->conf.table_id = $3->conf.id;
usr.sbin/relayd/parse.y
606
rdr->conf.mode = dstmode;
usr.sbin/relayd/parse.y
609
$3->conf.rdrid = rdr->conf.id;
usr.sbin/relayd/parse.y
613
if (host($3, &rdr->virts,
usr.sbin/relayd/parse.y
622
if (rdr->conf.port == 0)
usr.sbin/relayd/parse.y
623
rdr->conf.port = $5.val[0];
usr.sbin/relayd/parse.y
624
tableport = rdr->conf.port;
usr.sbin/relayd/parse.y
626
rdr->conf.flags |= F_PFLOG;
usr.sbin/relayd/parse.y
628
| DISABLE { rdr->conf.flags |= F_DISABLE; }
usr.sbin/relayd/parse.y
629
| STICKYADDR { rdr->conf.flags |= F_STICKY; }
usr.sbin/relayd/parse.y
632
if (strlcpy(rdr->conf.tag, $3,
usr.sbin/relayd/parse.y
633
sizeof(rdr->conf.tag)) >=
usr.sbin/relayd/parse.y
634
sizeof(rdr->conf.tag)) {
usr.sbin/relayd/parse.y
641
rdr->conf.flags |= F_MATCH;
usr.sbin/relayd/parse.y
645
if ((rdr->conf.timeout.tv_sec = $3) < 0) {
usr.sbin/relayd/parse.y
649
if (rdr->conf.timeout.tv_sec > INT_MAX) {
usr.sbin/relayd/parse.y
841
if (rdr != NULL) {
usr.sbin/relayd/parse.y
853
if (rdr == NULL) {
usr.sbin/relayd/pfe.c
367
struct rdr *rdr;
usr.sbin/relayd/pfe.c
376
TAILQ_FOREACH(rdr, env->sc_rdrs, entry) {
usr.sbin/relayd/pfe.c
378
rdr, sizeof(*rdr));
usr.sbin/relayd/pfe.c
379
if (rdr->conf.flags & F_DISABLE)
usr.sbin/relayd/pfe.c
383
&rdr->stats, sizeof(rdr->stats));
usr.sbin/relayd/pfe.c
386
rdr->table, sizeof(*rdr->table));
usr.sbin/relayd/pfe.c
387
if (!(rdr->table->conf.flags & F_DISABLE))
usr.sbin/relayd/pfe.c
388
TAILQ_FOREACH(host, &rdr->table->hosts, entry)
usr.sbin/relayd/pfe.c
392
if (rdr->backup->conf.id == EMPTY_TABLE)
usr.sbin/relayd/pfe.c
395
rdr->backup, sizeof(*rdr->backup));
usr.sbin/relayd/pfe.c
396
if (!(rdr->backup->conf.flags & F_DISABLE))
usr.sbin/relayd/pfe.c
397
TAILQ_FOREACH(host, &rdr->backup->hosts, entry)
usr.sbin/relayd/pfe.c
467
struct rdr *rdr;
usr.sbin/relayd/pfe.c
470
rdr = rdr_findbyname(env, id->name);
usr.sbin/relayd/pfe.c
472
rdr = rdr_find(env, id->id);
usr.sbin/relayd/pfe.c
473
if (rdr == NULL)
usr.sbin/relayd/pfe.c
475
id->id = rdr->conf.id;
usr.sbin/relayd/pfe.c
477
if (rdr->conf.flags & F_DISABLE)
usr.sbin/relayd/pfe.c
480
rdr->conf.flags |= F_DISABLE;
usr.sbin/relayd/pfe.c
481
rdr->conf.flags &= ~(F_ADD);
usr.sbin/relayd/pfe.c
482
rdr->conf.flags |= F_DEL;
usr.sbin/relayd/pfe.c
483
rdr->table->conf.flags |= F_DISABLE;
usr.sbin/relayd/pfe.c
484
log_debug("%s: redirect %d", __func__, rdr->conf.id);
usr.sbin/relayd/pfe.c
492
struct rdr *rdr;
usr.sbin/relayd/pfe.c
496
rdr = rdr_findbyname(env, id->name);
usr.sbin/relayd/pfe.c
498
rdr = rdr_find(env, id->id);
usr.sbin/relayd/pfe.c
499
if (rdr == NULL)
usr.sbin/relayd/pfe.c
501
id->id = rdr->conf.id;
usr.sbin/relayd/pfe.c
503
if (!(rdr->conf.flags & F_DISABLE))
usr.sbin/relayd/pfe.c
506
rdr->conf.flags &= ~(F_DISABLE);
usr.sbin/relayd/pfe.c
507
rdr->conf.flags &= ~(F_DEL);
usr.sbin/relayd/pfe.c
508
rdr->conf.flags |= F_ADD;
usr.sbin/relayd/pfe.c
509
log_debug("%s: redirect %d", __func__, rdr->conf.id);
usr.sbin/relayd/pfe.c
514
eid.id = rdr->table->conf.id;
usr.sbin/relayd/pfe.c
517
if (rdr->backup->conf.id == EMPTY_ID)
usr.sbin/relayd/pfe.c
519
eid.id = rdr->backup->conf.id;
usr.sbin/relayd/pfe.c
714
struct rdr *rdr;
usr.sbin/relayd/pfe.c
724
TAILQ_FOREACH(rdr, env->sc_rdrs, entry) {
usr.sbin/relayd/pfe.c
725
rdr->conf.flags &= ~(F_BACKUP);
usr.sbin/relayd/pfe.c
726
rdr->conf.flags &= ~(F_DOWN);
usr.sbin/relayd/pfe.c
728
if (rdr->conf.flags & F_DISABLE ||
usr.sbin/relayd/pfe.c
729
(rdr->table->up == 0 && rdr->backup->up == 0)) {
usr.sbin/relayd/pfe.c
730
rdr->conf.flags |= F_DOWN;
usr.sbin/relayd/pfe.c
732
} else if (rdr->table->up == 0 && rdr->backup->up > 0) {
usr.sbin/relayd/pfe.c
733
rdr->conf.flags |= F_BACKUP;
usr.sbin/relayd/pfe.c
734
active = rdr->backup;
usr.sbin/relayd/pfe.c
736
rdr->table->conf.flags & F_CHANGED;
usr.sbin/relayd/pfe.c
738
rdr->backup->conf.flags & F_CHANGED;
usr.sbin/relayd/pfe.c
740
active = rdr->table;
usr.sbin/relayd/pfe.c
747
sync_table(env, rdr, active);
usr.sbin/relayd/pfe.c
751
if (rdr->conf.flags & F_DOWN) {
usr.sbin/relayd/pfe.c
752
if (rdr->conf.flags & F_ACTIVE_RULESET) {
usr.sbin/relayd/pfe.c
753
flush_table(env, rdr);
usr.sbin/relayd/pfe.c
755
rdr->conf.flags &= ~(F_ACTIVE_RULESET);
usr.sbin/relayd/pfe.c
756
id.id = rdr->conf.id;
usr.sbin/relayd/pfe.c
760
sync_ruleset(env, rdr, 0);
usr.sbin/relayd/pfe.c
763
} else if (!(rdr->conf.flags & F_ACTIVE_RULESET)) {
usr.sbin/relayd/pfe.c
765
rdr->conf.flags |= F_ACTIVE_RULESET;
usr.sbin/relayd/pfe.c
766
id.id = rdr->conf.id;
usr.sbin/relayd/pfe.c
770
sync_ruleset(env, rdr, 1);
usr.sbin/relayd/pfe.c
819
struct rdr *rdr;
usr.sbin/relayd/pfe.c
828
TAILQ_FOREACH(rdr, env->sc_rdrs, entry) {
usr.sbin/relayd/pfe.c
829
cnt = check_table(env, rdr, rdr->table);
usr.sbin/relayd/pfe.c
830
if (rdr->conf.backup_id != EMPTY_TABLE)
usr.sbin/relayd/pfe.c
831
cnt += check_table(env, rdr, rdr->backup);
usr.sbin/relayd/pfe.c
835
cur = &rdr->stats;
usr.sbin/relayd/pfe.c
858
rdr->stats.interval = env->sc_conf.statinterval.tv_sec;
usr.sbin/relayd/pfe_filter.c
110
struct rdr *rdr;
usr.sbin/relayd/pfe_filter.c
116
TAILQ_FOREACH(rdr, env->sc_rdrs, entry) {
usr.sbin/relayd/pfe_filter.c
121
if (strlcat(io.pfrio_table.pfrt_anchor, rdr->conf.name,
usr.sbin/relayd/pfe_filter.c
136
sync_table(struct relayd *env, struct rdr *rdr, struct table *table)
usr.sbin/relayd/pfe_filter.c
152
flush_table(env, rdr);
usr.sbin/relayd/pfe_filter.c
167
if (strlcat(io.pfrio_table.pfrt_anchor, rdr->conf.name,
usr.sbin/relayd/pfe_filter.c
170
if (strlcpy(io.pfrio_table.pfrt_name, rdr->conf.name,
usr.sbin/relayd/pfe_filter.c
206
if (rdr->conf.flags & F_STICKY)
usr.sbin/relayd/pfe_filter.c
270
flush_table(struct relayd *env, struct rdr *rdr)
usr.sbin/relayd/pfe_filter.c
281
if (strlcat(io.pfrio_table.pfrt_anchor, rdr->conf.name,
usr.sbin/relayd/pfe_filter.c
284
if (strlcpy(io.pfrio_table.pfrt_name, rdr->conf.name,
usr.sbin/relayd/pfe_filter.c
297
log_debug("%s: flushed table %s", __func__, rdr->conf.name);
usr.sbin/relayd/pfe_filter.c
334
sync_ruleset(struct relayd *env, struct rdr *rdr, int enable)
usr.sbin/relayd/pfe_filter.c
341
struct table *t = rdr->table;
usr.sbin/relayd/pfe_filter.c
350
if (strlcat(anchor, rdr->conf.name, sizeof(anchor)) >=
usr.sbin/relayd/pfe_filter.c
367
TAILQ_FOREACH(address, &rdr->virts, entry) {
usr.sbin/relayd/pfe_filter.c
371
if (rdr->conf.flags & F_MATCH) {
usr.sbin/relayd/pfe_filter.c
381
if (rdr->conf.flags & F_PFLOG)
usr.sbin/relayd/pfe_filter.c
421
(u_int32_t)MINIMUM(rdr->conf.timeout.tv_sec,
usr.sbin/relayd/pfe_filter.c
424
if (strlen(rdr->conf.tag))
usr.sbin/relayd/pfe_filter.c
425
(void)strlcpy(rio.rule.tagname, rdr->conf.tag,
usr.sbin/relayd/pfe_filter.c
447
rio.rule.rdr.addr.type = PF_ADDR_TABLE;
usr.sbin/relayd/pfe_filter.c
449
(void)strlcpy(rio.rule.rdr.ifname, t->conf.ifname,
usr.sbin/relayd/pfe_filter.c
450
sizeof(rio.rule.rdr.ifname));
usr.sbin/relayd/pfe_filter.c
451
if (strlcpy(rio.rule.rdr.addr.v.tblname, rdr->conf.name,
usr.sbin/relayd/pfe_filter.c
452
sizeof(rio.rule.rdr.addr.v.tblname)) >=
usr.sbin/relayd/pfe_filter.c
453
sizeof(rio.rule.rdr.addr.v.tblname))
usr.sbin/relayd/pfe_filter.c
457
rdr->table->conf.flags & F_PORT) {
usr.sbin/relayd/pfe_filter.c
458
rio.rule.rdr.proxy_port[0] =
usr.sbin/relayd/pfe_filter.c
459
ntohs(rdr->table->conf.port);
usr.sbin/relayd/pfe_filter.c
460
rio.rule.rdr.port_op = PF_OP_EQ;
usr.sbin/relayd/pfe_filter.c
463
switch (rdr->conf.mode) {
usr.sbin/relayd/pfe_filter.c
465
rio.rule.rdr.opts = PF_POOL_RANDOM;
usr.sbin/relayd/pfe_filter.c
468
rio.rule.rdr.opts = PF_POOL_ROUNDROBIN;
usr.sbin/relayd/pfe_filter.c
471
rio.rule.rdr.opts = PF_POOL_SRCHASH;
usr.sbin/relayd/pfe_filter.c
474
rio.rule.rdr.opts = PF_POOL_LEASTSTATES;
usr.sbin/relayd/pfe_filter.c
480
if (rdr->conf.flags & F_STICKY)
usr.sbin/relayd/pfe_filter.c
481
rio.rule.rdr.opts |= PF_POOL_STICKYADDR;
usr.sbin/relayd/pfe_filter.c
482
if (rdr->conf.flags & F_HASHKEY)
usr.sbin/relayd/pfe_filter.c
483
memcpy(rio.rule.rdr.key.key32, rdr->conf.key.data,
usr.sbin/relayd/pfe_filter.c
484
sizeof(rio.rule.rdr.key.key32));
usr.sbin/relayd/pfe_filter.c
487
memcpy(&rio.rule.route, &rio.rule.rdr,
usr.sbin/relayd/pfe_filter.c
489
rio.rule.rdr.addr.type = PF_ADDR_NONE;
usr.sbin/relayd/pfe_filter.c
507
struct rdr *rdr;
usr.sbin/relayd/pfe_filter.c
514
TAILQ_FOREACH(rdr, env->sc_rdrs, entry) {
usr.sbin/relayd/pfe_filter.c
518
if (strlcat(anchor, rdr->conf.name, sizeof(anchor)) >=
usr.sbin/relayd/pfe_filter.c
52
struct rdr *rdr;
usr.sbin/relayd/pfe_filter.c
617
check_table(struct relayd *env, struct rdr *rdr, struct table *table)
usr.sbin/relayd/pfe_filter.c
63
TAILQ_FOREACH(rdr, env->sc_rdrs, entry) {
usr.sbin/relayd/pfe_filter.c
632
if (strlcat(io.pfrio_table.pfrt_anchor, rdr->conf.name,
usr.sbin/relayd/pfe_filter.c
635
if (strlcpy(io.pfrio_table.pfrt_name, rdr->conf.name,
usr.sbin/relayd/pfe_filter.c
67
if (strlcat(tables[i].pfrt_anchor, rdr->conf.name,
usr.sbin/relayd/pfe_filter.c
70
if (strlcpy(tables[i].pfrt_name, rdr->conf.name,
usr.sbin/relayd/pfe_filter.c
97
TAILQ_FOREACH(rdr, env->sc_rdrs, entry)
usr.sbin/relayd/pfe_filter.c
98
flush_table(env, rdr);
usr.sbin/relayd/relayd.c
1083
struct rdr *
usr.sbin/relayd/relayd.c
1086
struct rdr *rdr;
usr.sbin/relayd/relayd.c
1088
TAILQ_FOREACH(rdr, env->sc_rdrs, entry)
usr.sbin/relayd/relayd.c
1089
if (rdr->conf.id == id)
usr.sbin/relayd/relayd.c
1090
return (rdr);
usr.sbin/relayd/relayd.c
1203
struct rdr *
usr.sbin/relayd/relayd.c
1206
struct rdr *rdr;
usr.sbin/relayd/relayd.c
1208
TAILQ_FOREACH(rdr, env->sc_rdrs, entry)
usr.sbin/relayd/relayd.c
1209
if (strcmp(rdr->conf.name, name) == 0)
usr.sbin/relayd/relayd.c
1210
return (rdr);
usr.sbin/relayd/relayd.c
285
struct rdr *rdr;
usr.sbin/relayd/relayd.c
294
TAILQ_FOREACH(rdr, env->sc_rdrs, entry)
usr.sbin/relayd/relayd.c
295
config_setrdr(env, rdr);
usr.sbin/relayd/relayd.h
1187
void flush_table(struct relayd *, struct rdr *);
usr.sbin/relayd/relayd.h
1188
void sync_table(struct relayd *, struct rdr *, struct table *);
usr.sbin/relayd/relayd.h
1189
void sync_ruleset(struct relayd *, struct rdr *, int);
usr.sbin/relayd/relayd.h
1192
u_int64_t check_table(struct relayd *, struct rdr *, struct table *);
usr.sbin/relayd/relayd.h
1297
struct rdr *rdr_find(struct relayd *, objid_t);
usr.sbin/relayd/relayd.h
1303
struct rdr *rdr_findbyname(struct relayd *, const char *);
usr.sbin/relayd/relayd.h
1445
int config_setrdr(struct relayd *, struct rdr *);
usr.sbin/relayd/relayd.h
555
TAILQ_ENTRY(rdr) entry;
usr.sbin/relayd/relayd.h
562
TAILQ_HEAD(rdrlist, rdr);
usr.sbin/tftp-proxy/filter.c
191
pfr.rule.rdr.addr.type = PF_ADDR_NONE;
usr.sbin/tftp-proxy/filter.c
77
u_int16_t d_port, struct sockaddr *rdr, u_int16_t rdr_port, u_int8_t proto)
usr.sbin/tftp-proxy/filter.c
79
if (!src || !dst || !d_port || !rdr || !rdr_port || !proto ||
usr.sbin/tftp-proxy/filter.c
80
(src->sa_family != rdr->sa_family)) {
usr.sbin/tftp-proxy/filter.c
88
pfr.rule.rdr.addr.type = PF_ADDR_ADDRMASK;
usr.sbin/tftp-proxy/filter.c
89
if (rdr->sa_family == AF_INET) {
usr.sbin/tftp-proxy/filter.c
90
memcpy(&pfr.rule.rdr.addr.v.a.addr.v4,
usr.sbin/tftp-proxy/filter.c
91
&satosin(rdr)->sin_addr.s_addr, 4);
usr.sbin/tftp-proxy/filter.c
92
memset(&pfr.rule.rdr.addr.v.a.mask.addr8, 255, 4);
usr.sbin/tftp-proxy/filter.c
94
memcpy(&pfr.rule.rdr.addr.v.a.addr.v6,
usr.sbin/tftp-proxy/filter.c
95
&satosin6(rdr)->sin6_addr.s6_addr, 16);
usr.sbin/tftp-proxy/filter.c
96
memset(&pfr.rule.rdr.addr.v.a.mask.addr8, 255, 16);
usr.sbin/tftp-proxy/filter.c
99
pfr.rule.rdr.proxy_port[0] = rdr_port;