Lines 208-214
void
Link Here
|
208 |
print_state(struct pfsync_state *s, int opts) |
208 |
print_state(struct pfsync_state *s, int opts) |
209 |
{ |
209 |
{ |
210 |
struct pfsync_state_peer *src, *dst; |
210 |
struct pfsync_state_peer *src, *dst; |
211 |
struct pfsync_state_key *sk, *nk; |
211 |
struct pfsync_state_key sk, nk; |
212 |
struct protoent *p; |
212 |
struct protoent *p; |
213 |
int min, sec; |
213 |
int min, sec; |
214 |
|
214 |
|
Lines 215-231
print_state(struct pfsync_state *s, int opts)
Link Here
|
215 |
if (s->direction == PF_OUT) { |
215 |
if (s->direction == PF_OUT) { |
216 |
src = &s->src; |
216 |
src = &s->src; |
217 |
dst = &s->dst; |
217 |
dst = &s->dst; |
218 |
sk = &s->key[PF_SK_STACK]; |
218 |
bcopy(&s->key[PF_SK_STACK], &sk, sizeof(sk)); |
219 |
nk = &s->key[PF_SK_WIRE]; |
219 |
bcopy(&s->key[PF_SK_WIRE], &nk, sizeof(nk)); |
220 |
if (s->proto == IPPROTO_ICMP || s->proto == IPPROTO_ICMPV6) |
220 |
if (s->proto == IPPROTO_ICMP || s->proto == IPPROTO_ICMPV6) |
221 |
sk->port[0] = nk->port[0]; |
221 |
sk.port[0] = nk.port[0]; |
222 |
} else { |
222 |
} else { |
223 |
src = &s->dst; |
223 |
src = &s->dst; |
224 |
dst = &s->src; |
224 |
dst = &s->src; |
225 |
sk = &s->key[PF_SK_WIRE]; |
225 |
bcopy(&s->key[PF_SK_WIRE], &sk, sizeof(sk)); |
226 |
nk = &s->key[PF_SK_STACK]; |
226 |
bcopy(&s->key[PF_SK_STACK], &nk, sizeof(nk)); |
227 |
if (s->proto == IPPROTO_ICMP || s->proto == IPPROTO_ICMPV6) |
227 |
if (s->proto == IPPROTO_ICMP || s->proto == IPPROTO_ICMPV6) |
228 |
sk->port[1] = nk->port[1]; |
228 |
sk.port[1] = nk.port[1]; |
229 |
} |
229 |
} |
230 |
printf("%s ", s->ifname); |
230 |
printf("%s ", s->ifname); |
231 |
if ((p = getprotobynumber(s->proto)) != NULL) |
231 |
if ((p = getprotobynumber(s->proto)) != NULL) |
Lines 233-243
print_state(struct pfsync_state *s, int opts)
Link Here
|
233 |
else |
233 |
else |
234 |
printf("%u ", s->proto); |
234 |
printf("%u ", s->proto); |
235 |
|
235 |
|
236 |
print_host(&nk->addr[1], nk->port[1], s->af, opts); |
236 |
print_host(&nk.addr[1], nk.port[1], s->af, opts); |
237 |
if (PF_ANEQ(&nk->addr[1], &sk->addr[1], s->af) || |
237 |
if (PF_ANEQ(&nk.addr[1], &sk.addr[1], s->af) || |
238 |
nk->port[1] != sk->port[1]) { |
238 |
nk.port[1] != sk.port[1]) { |
239 |
printf(" ("); |
239 |
printf(" ("); |
240 |
print_host(&sk->addr[1], sk->port[1], s->af, opts); |
240 |
print_host(&sk.addr[1], sk.port[1], s->af, opts); |
241 |
printf(")"); |
241 |
printf(")"); |
242 |
} |
242 |
} |
243 |
if (s->direction == PF_OUT) |
243 |
if (s->direction == PF_OUT) |
Lines 244-254
print_state(struct pfsync_state *s, int opts)
Link Here
|
244 |
printf(" -> "); |
244 |
printf(" -> "); |
245 |
else |
245 |
else |
246 |
printf(" <- "); |
246 |
printf(" <- "); |
247 |
print_host(&nk->addr[0], nk->port[0], s->af, opts); |
247 |
print_host(&nk.addr[0], nk.port[0], s->af, opts); |
248 |
if (PF_ANEQ(&nk->addr[0], &sk->addr[0], s->af) || |
248 |
if (PF_ANEQ(&nk.addr[0], &sk.addr[0], s->af) || |
249 |
nk->port[0] != sk->port[0]) { |
249 |
nk.port[0] != sk.port[0]) { |
250 |
printf(" ("); |
250 |
printf(" ("); |
251 |
print_host(&sk->addr[0], sk->port[0], s->af, opts); |
251 |
print_host(&sk.addr[0], sk.port[0], s->af, opts); |
252 |
printf(")"); |
252 |
printf(")"); |
253 |
} |
253 |
} |
254 |
|
254 |
|