diff options
author | Daniel Hartmeier <dhartmei@cvs.openbsd.org> | 2003-01-04 17:40:52 +0000 |
---|---|---|
committer | Daniel Hartmeier <dhartmei@cvs.openbsd.org> | 2003-01-04 17:40:52 +0000 |
commit | 64dbb61a29a5756fc001ac259d55a94c0e13a020 (patch) | |
tree | fcf24cd6f682a42af37478357a7f7dce48ae83bd /sys/net/pf_norm.c | |
parent | a7c15f8bfc60b7168a88c35f292b71db66376f26 (diff) |
move noroute from flag in pf_rule_addr into type in pf_addr_wrap.
ok henning@, mcbride@
Diffstat (limited to 'sys/net/pf_norm.c')
-rw-r--r-- | sys/net/pf_norm.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/sys/net/pf_norm.c b/sys/net/pf_norm.c index dcd04a26062..f2d3e5244e2 100644 --- a/sys/net/pf_norm.c +++ b/sys/net/pf_norm.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pf_norm.c,v 1.47 2003/01/03 19:31:43 deraadt Exp $ */ +/* $OpenBSD: pf_norm.c,v 1.48 2003/01/04 17:40:51 dhartmei Exp $ */ /* * Copyright 2001 Niels Provos <provos@citi.umich.edu> @@ -1014,18 +1014,22 @@ pf_normalize_tcp(int dir, struct ifnet *ifp, struct mbuf *m, int ipoff, r = r->skip[PF_SKIP_AF].ptr; else if (r->proto && r->proto != pd->proto) r = r->skip[PF_SKIP_PROTO].ptr; - else if (r->src.noroute && pf_routable(pd->src, af)) + else if (r->src.addr.type == PF_ADDR_NOROUTE && + pf_routable(pd->src, af)) r = TAILQ_NEXT(r, entries); - else if (!r->src.noroute && !PF_AZERO(&r->src.addr.mask, af) && + else if (r->src.addr.type != PF_ADDR_NOROUTE && + !PF_AZERO(&r->src.addr.mask, af) && !PF_MATCHA(r->src.not, &r->src.addr.addr, &r->src.addr.mask, pd->src, af)) r = r->skip[PF_SKIP_SRC_ADDR].ptr; else if (r->src.port_op && !pf_match_port(r->src.port_op, r->src.port[0], r->src.port[1], th->th_sport)) r = r->skip[PF_SKIP_SRC_PORT].ptr; - else if (r->dst.noroute && pf_routable(pd->dst, af)) + else if (r->dst.addr.type == PF_ADDR_NOROUTE && + pf_routable(pd->dst, af)) r = TAILQ_NEXT(r, entries); - else if (!r->dst.noroute && !PF_AZERO(&r->dst.addr.mask, af) && + else if (!r->dst.addr.type != PF_ADDR_NOROUTE && + !PF_AZERO(&r->dst.addr.mask, af) && !PF_MATCHA(r->dst.not, &r->dst.addr.addr, &r->dst.addr.mask, pd->dst, af)) r = r->skip[PF_SKIP_DST_ADDR].ptr; |