diff options
author | luigi <luigi@FreeBSD.org> | 2002-05-13 10:37:19 +0000 |
---|---|---|
committer | luigi <luigi@FreeBSD.org> | 2002-05-13 10:37:19 +0000 |
commit | 2afce45ffcb33c722890e0085af2e0af09472a4e (patch) | |
tree | 3178446df8619c134cc22fc1485f4a05238cc975 /usr.sbin/ctm | |
parent | f3653f3da85e17701bd60340a6a015bdcacb446f (diff) | |
download | FreeBSD-src-2afce45ffcb33c722890e0085af2e0af09472a4e.zip FreeBSD-src-2afce45ffcb33c722890e0085af2e0af09472a4e.tar.gz |
Add ipfw hooks to ether_demux() and ether_output_frame().
Ipfw processing of frames at layer 2 can be enabled by the sysctl variable
net.link.ether.ipfw=1
Consider this feature experimental, because right now, the firewall
is invoked in the places indicated below, and controlled by the
sysctl variables listed on the right. As a consequence, a packet
can be filtered from 1 to 4 times depending on the path it follows,
which might make a ruleset a bit hard to follow.
I will add an ipfw option to tell if we want a given rule to apply
to ether_demux() and ether_output_frame(), but we have run out of
flags in the struct ip_fw so i need to think a bit on how to implement
this.
to upper layers
| |
+----------->-----------+
^ V
[ip_input] [ip_output] net.inet.ip.fw.enable=1
| |
^ V
[ether_demux] [ether_output_frame] net.link.ether.ipfw=1
| |
+->- [bdg_forward]-->---+ net.link.ether.bridge_ipfw=1
^ V
| |
to devices
Diffstat (limited to 'usr.sbin/ctm')
0 files changed, 0 insertions, 0 deletions