diff options
author | glebius <glebius@FreeBSD.org> | 2006-04-18 09:20:16 +0000 |
---|---|---|
committer | glebius <glebius@FreeBSD.org> | 2006-04-18 09:20:16 +0000 |
commit | 2b57d73db9138dc9f143fc922413cbdb0298e111 (patch) | |
tree | 3b84b53484598e95f8f2a61da0354079ade290dc /sys/netinet | |
parent | 0c90800cc68dbc996e5e2c5ff15d88797a7b4724 (diff) | |
download | FreeBSD-src-2b57d73db9138dc9f143fc922413cbdb0298e111.zip FreeBSD-src-2b57d73db9138dc9f143fc922413cbdb0298e111.tar.gz |
Merge rev. 1.240 of ip_output.c, so that IPFIREWALL_FORWARD_EXTENDED
kernel option will affect both forwarding methods - classic and fast.
Diffstat (limited to 'sys/netinet')
-rw-r--r-- | sys/netinet/ip_fastfwd.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/netinet/ip_fastfwd.c b/sys/netinet/ip_fastfwd.c index 94da84b..3b0496b 100644 --- a/sys/netinet/ip_fastfwd.c +++ b/sys/netinet/ip_fastfwd.c @@ -476,8 +476,12 @@ forwardlocal: */ #ifdef IPFIREWALL_FORWARD if (fwd_tag) { - if (!in_localip(ip->ip_src) && !in_localaddr(ip->ip_dst)) - dest.s_addr = ((struct sockaddr_in *)(fwd_tag+1))->sin_addr.s_addr; +#ifndef IPFIREWALL_FORWARD_EXTENDED + if (!in_localip(ip->ip_src) && + !in_localaddr(ip->ip_dst)) +#endif + dest.s_addr = ((struct sockaddr_in *) + (fwd_tag + 1))->sin_addr.s_addr; m_tag_delete(m, fwd_tag); } #endif /* IPFIREWALL_FORWARD */ |