cvs commit: src/sys/contrib/pf/net if_pflog.c if_pflog.h if_pfsync.c if_pfsync.h pf.c pf_ioctl.c pf_norm.c pf_osfp.c pf_table.c pfvar.h src/sys/contrib/pf/netinet in4_cksum.c

Alexey Dokuchaev danfe at
Fri Feb 27 00:35:33 PST 2004

On Fri, Feb 27, 2004 at 09:28:04AM +0100, Dag-Erling Sm?rgrav wrote:
> Sam Leffler <sam at> writes:
> > I made two attempts to eliminate all the ipfw-, dummmynet-, and
> > bridge-specific code in the ip protocols but never got stuff to the
> > point where I was willing to commit it.  My main motivation for doing
> > this was to eliminate much of the incestuous behaviour so that you
> > could reason about locking requirements but there were other benefits
> > (e.g. I was also trying to make the ip code more "firewall agnostic").
> The ideal solution would be to convert the entire networking stack to
> netgraph nodes; we could then insert filter nodes at any point in the
> graph.

That idea was attracting my attention for quite some time, probably
since when emax' bluetooth stuff hit the tree.  It seems the most
generic and coherent approach; especially provided that all core
functionality is already implemented and well-tested, and there are lots
of real-life NG-based solutions already available that come with both
stock FreeBSD and from third parties.  I'm also wondering how far is it
possible to push NG usage into the kernel; e.g. can USB stack be
converted to it (seeing analogy with bluetooth here)?


More information about the cvs-src mailing list