Subject: Ethernet Input Processing
To: None <tech-net@netbsd.org>
From: Michael Hertrick <m.hertrick@neovera.com>
List: tech-net
Date: 11/18/2003 00:45:55
I'm a little confused by the ether_input function in if_ethersubr.c. It
seems that no matter what I do to it, I can't get packets destined to an
ethernet multicast address to be dropped when they match certain
criteria. Honestly, I'm not sure if this is specific to multicast
addresses...that just happens to be what I'm using. For example, the
goal is to have a packet destined for 01:00:5e:00:01:XX dropped if the
CARP interface is in the backup state and processed only when it's in
the master state.
It looks to me like ether_input isn't even being used. True? Half-true?
So, I started looking for where the ether_input function is called from
the drivers I'm using (fxp and ex). Couldn't find it. In fact, I can
only find ether_input called from a few drivers.
http://www.netbsd.org/Documentation/kernel/porting-freebsd-net.html says
"NetBSD: whole packet, indirectly through ifp->ifp_input", but I can't
find ifp_input used anywhere either.
From where do I need to call the CARP state checks to accomplish my goal?
Thanks,
Mike.