pfil on bridge interface, looking for ether_header
Andrew Thompson
thompsa at freebsd.org
Fri Nov 3 01:52:21 UTC 2006
On Thu, Nov 02, 2006 at 05:45:50PM -0800, Kevin Sanders wrote:
> I've written a kernel module that has pfil_add_hook'ed into the pfil
> framework. When my input packet filter function is called, I can
> mtod(*m, struct IP *) to the IP header, but haven't found a way to
> find the original ethernet header. (*m)->m_pkthdr.header always seems
> to be NULL (I'm not even sure what it's used for but I gave it try).
> Any advice sure would be welcome, thanks in advance.
If you look in if_bridge.c:bridge_pfil you will see that the ethernet
header is stripped from the mbuf before passing to pfil. You may want to
create another hook such as ether_pfil_hook and modify the bridge to use
it. Alternatively see the recent discussion between Julian and Andre on
the matter.
cheers,
Andrew
More information about the freebsd-net
mailing list