Ethernet Layer communications

Daron Chabot daron.chabot at
Thu Apr 14 21:21:41 UTC 2011

On Thu, Apr 14, 2011 at 5:16 PM, Brett Swimley <brett.swimley at
> wrote:

> Thanks Daron,
> I had found this reference, and it appears that libpcap uses this API, so I
> will continue looking. I'm hoping that the RTEMS stack does support bpf.

I had a brief grep through the source tree and noted that there were only 3
NIC drivers that had the bpf_mtap( ) interface (all ported from FreeBSD!):

dchabot at dev32new--> git grep -n bpf c/src/libchip/network
c/src/libchip/network/i82586.c:1280:  if (sc->arpcom.ac_if.if_bpf != 0)
c/src/libchip/network/i82586.c:1282:    bpf_mtap(sc->arpcom.ac_if.if_bpf,
c/src/libchip/network/i82586.c:1378:    if (ifp->if_bpf)
c/src/libchip/network/i82586.c:1379:      bpf_mtap(ifp->if_bpf, m0);
c/src/libchip/network/if_dc.c:159:#include <net/bpf.h>
c/src/libchip/network/if_dc.c:3372:             if (ifp->if_bpf)
c/src/libchip/network/if_dc.c:3373:                     bpf_mtap(ifp,
c/src/libchip/network/if_fxp.c:87:#include <net/bpf.h>
c/src/libchip/network/if_fxp.c:1262:             * Pass packet to bpf if
there i
c/src/libchip/network/if_fxp.c:1264:            if (ifp->if_bpf)
c/src/libchip/network/if_fxp.c:1265:                    bpf_mtap(ifp,

But, on further inspection, the bpf_mtaps( ) were "#if 0"'d out of

Then there's the issue of creating /dev/bpfX device nodes...

I would be surprised if someone out there doesn't have something already,
perhaps created to support message passing between nodes of a distributed,
multi-processing system?

I'm looking at you Till... ;-)

-- dc

> Brett
> On Thu, Apr 14, 2011 at 2:30 PM, Daron Chabot <daron.chabot at>wrote:
>> Hi Brett,
>> I have not looked into this in much detail, but since RTEMS' network stack
>> is ported from FreeBSD, you may be able to use the Berkley Packet Filter
>> (bpf) API for this.
>> -- dc
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the users mailing list