Subject: Re: revised ethernet/802.xx input header processing.
To: Bill Sommerfeld <sommerfeld@orchard.arlington.ma.us>
From: Matt Thomas <matt@3am-software.com>
List: tech-net
Date: 10/31/1999 08:24:29
At 04:37 AM 10/31/99 , Bill Sommerfeld wrote:
> > No it isn't.  It's for 802.1 bridging.  you need to preserve the entire
> > packet (including crc -- if possible) if you are forwarding across unlike
> > media.
>
>Hmm.  I would presume that for bridging, you'd want {ether,fddi,token,...}_input()
>to start something like:
>
>foo_input(ifp, m) {
>         look at dst address
>                 if (!unicast) {
>                 if multicast, set M_MCAST
>                 if broadcast, set M_BCAST
>#ifdef BRIDGE
>                 foo_forward_mcast(ifp, m_copym(m))
>#endif
>         }
>#ifdef BRIDGE
>         else if (dst is not for me) { foo_forward(ifp, m); return; }
>#endif
>         ...

Nope.  Why?  Because at the same time, I'd like to add support multiple
physical addresses.  As well as doing etype/port filtering for bridging.
(bridge mop but force IP to forwarded and block arp).
-- 
Matt Thomas               Internet:   matt@3am-software.com
3am Software Foundry      WWW URL:    http://www.3am-software.com/bio/matt/
Cupertino, CA             Disclaimer: I avow all knowledge of this message