PF_SK_WIRE
int afto = (s->key[PF_SK_STACK].af != s->key[PF_SK_WIRE].af);
proto = s->key[PF_SK_WIRE].proto;
nk = &key[PF_SK_WIRE];
sk = &key[PF_SK_WIRE];
(((state)->key[PF_SK_WIRE]->af != (state)->key[PF_SK_STACK]->af) && \
((state)->key[PF_SK_WIRE]->af != (family)) && \
if (st->key[PF_SK_WIRE]->proto == IPPROTO_TCP)
if (st->key[PF_SK_WIRE]->proto == IPPROTO_TCP)
st->key[PF_SK_WIRE]->proto == IPPROTO_PFSYNC) {
if (st->key[PF_SK_WIRE]->proto == IPPROTO_TCP) {
kw = &key[PF_SK_WIRE];
kw = &sp->pfs_1301.key[PF_SK_WIRE];
pfoe->af = state->key[PF_SK_WIRE]->af;
sk = s->key[PF_SK_WIRE];
KASSERT(s->key[PF_SK_WIRE] == NULL, ("%s: state has key", __func__));
idx = PF_SK_WIRE;
((si->key[PF_SK_WIRE]->af == sk->af &&
(si->key[PF_SK_WIRE]->af !=
(idx == PF_SK_WIRE) ?
(idx == PF_SK_WIRE) ?
(idx == PF_SK_WIRE) ?
PF_SK_WIRE);
if (idx == PF_SK_WIRE)
s->key[PF_SK_STACK] = s->key[PF_SK_WIRE];
KASSERT(s->key[PF_SK_WIRE] != NULL && s->key[PF_SK_STACK] != NULL,
if (sks == s->key[PF_SK_WIRE]) {
pf_state_key_detach(s, PF_SK_WIRE);
if (s->key[PF_SK_WIRE] != NULL) {
kh = &V_pf_keyhash[pf_hashkey(s->key[PF_SK_WIRE])];
if (s->key[PF_SK_WIRE] != NULL)
pf_state_key_detach(s, PF_SK_WIRE);
TAILQ_INIT(&sk->states[PF_SK_WIRE]);
idx = (pd->dir == PF_IN ? PF_SK_WIRE : PF_SK_STACK);
idx = idx == PF_SK_WIRE ? PF_SK_STACK : PF_SK_WIRE;
s->key[PF_SK_WIRE]->af == s->key[PF_SK_STACK]->af)
idx = PF_SK_WIRE;
idx = PF_SK_WIRE;
pf_send_tcp(s->rule, s->key[PF_SK_WIRE]->af,
&s->key[PF_SK_WIRE]->addr[1],
&s->key[PF_SK_WIRE]->addr[0],
s->key[PF_SK_WIRE]->port[1],
s->key[PF_SK_WIRE]->port[0],
pf_source_key(srlim, &key, s->key[PF_SK_WIRE]->af,
&s->key[PF_SK_WIRE]->addr[0 /* XXX or 1? */]);
skw = skwp ? skwp : (s ? s->key[PF_SK_WIRE] : NULL);
ctx.sk = (*sm)->key[pd->dir == PF_IN ? PF_SK_STACK : PF_SK_WIRE];
ctx.nk = (*sm)->key[pd->dir == PF_IN ? PF_SK_WIRE : PF_SK_STACK];
nk = (_s)->key[PF_SK_WIRE]; \
if ((*state)->key[PF_SK_WIRE] != (*state)->key[PF_SK_STACK]) {
&s->key[PF_SK_WIRE]->addr[s->direction == PF_OUT],
s->key[PF_SK_WIRE]->af) == 0) {
&s->key[PF_SK_WIRE]->addr[s->direction == PF_IN],
s->key[PF_SK_WIRE]->af) == 0) {
if ((*state)->key[PF_SK_WIRE]->af != (*state)->key[PF_SK_STACK]->af)
direction = (pd->af == (*state)->key[PF_SK_WIRE]->af) ?
if ((*state)->key[PF_SK_WIRE] != (*state)->key[PF_SK_STACK]) {
if ((*state)->key[PF_SK_WIRE] !=
if ((*state)->key[PF_SK_WIRE] !=
if ((*state)->key[PF_SK_WIRE] !=
if ((*state)->key[PF_SK_WIRE] !=
if ((*state)->key[PF_SK_WIRE] !=
if ((*state)->key[PF_SK_WIRE] !=
sk = s->key[psk->psk_nat ? PF_SK_STACK : PF_SK_WIRE];
idx = psk->psk_nat ? PF_SK_WIRE : PF_SK_STACK;
idx = psk->psk_nat ? PF_SK_STACK : PF_SK_WIRE;
sp->pfs_1301.key[PF_SK_WIRE].addr[0] = st->key[PF_SK_WIRE]->addr[0];
sp->pfs_1301.key[PF_SK_WIRE].addr[1] = st->key[PF_SK_WIRE]->addr[1];
sp->pfs_1301.key[PF_SK_WIRE].port[0] = st->key[PF_SK_WIRE]->port[0];
sp->pfs_1301.key[PF_SK_WIRE].port[1] = st->key[PF_SK_WIRE]->port[1];
sp->pfs_1301.proto = st->key[PF_SK_WIRE]->proto;
sp->pfs_1301.af = st->key[PF_SK_WIRE]->af;
sp->pfs_1400.proto = st->key[PF_SK_WIRE]->proto;
sp->pfs_1400.af = st->key[PF_SK_WIRE]->af;
sp->pfs_1500.wire_proto = st->key[PF_SK_WIRE]->proto;
sp->pfs_1500.wire_af = st->key[PF_SK_WIRE]->af;
sp->key[PF_SK_WIRE].addr[0] = st->key[PF_SK_WIRE]->addr[0];
sp->key[PF_SK_WIRE].addr[1] = st->key[PF_SK_WIRE]->addr[1];
sp->key[PF_SK_WIRE].port[0] = st->key[PF_SK_WIRE]->port[0];
sp->key[PF_SK_WIRE].port[1] = st->key[PF_SK_WIRE]->port[1];
sp->proto = st->key[PF_SK_WIRE]->proto;
sp->af = st->key[PF_SK_WIRE]->af;
idx = PF_SK_WIRE;
key = s->key[PF_SK_WIRE];
af = s->key[PF_SK_WIRE]->af;
nlattr_add_u8(nw, PF_ST_PROTO, s->key[PF_SK_WIRE]->proto);
sa_family_t af = s->key[PF_SK_WIRE]->af;
if (attrs->proto != 0 && s->key[PF_SK_WIRE]->proto != attrs->proto)
if (pf_match_addr(1, &s->key[PF_SK_WIRE]->addr[0],
pf_match_addr(1, &s->key[PF_SK_WIRE]->addr[1],
tmp = pf_state_key_to_nvstate_key(s->key[PF_SK_WIRE]);
nat1->postnat_src_ip = nat2->postnat_dest_ip = st->key[PF_SK_WIRE]->addr[src].v4.s_addr;
nat1->postnat_src_port = nat2->postnat_dest_port = st->key[PF_SK_WIRE]->port[src];
nat1->postnat_dest_ip = nat2->postnat_src_ip = st->key[PF_SK_WIRE]->addr[dst].v4.s_addr;
nat1->postnat_dest_port = nat2->postnat_src_port = st->key[PF_SK_WIRE]->port[dst];
if (st->key[PF_SK_STACK] == NULL || st->key[PF_SK_WIRE] == NULL)
sk = st->key[st->direction == PF_IN ? PF_SK_WIRE : PF_SK_STACK];
return (memcmp(st->key[PF_SK_WIRE], st->key[PF_SK_STACK],