cvs commit: src/sys/net if_tap.c

Bruce M Simpson bms at
Sat Feb 24 11:11:36 UTC 2007

bms         2007-02-24 11:11:36 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_6)
    sys/net              if_tap.c 
  MFC rev 1.68:
    Drop unicast Ethernet frames not destined for the configured address
    of a tap(4) instance, if IFF_PROMISC is not set.
    In tap(4), we should emulate the effect IFF_PROMISC would have on
    hardware, otherwise we risk introducing layer 2 loops if tap(4) is
    used with bridges. This means not even bpf(4) gets to see them.
    This patch has been tested in a variety of situations. Multicast and
    broadcast frames are correctly allowed through. I have observed this
    behaviour causing problems with multiple QEMU instances hosted on
    the same FreeBSD machine.
    The checks in in ether_demux() [if_ethersubr.c, rev 1.222, line 638]
    are insufficient to prevent this bug from occurring, as ifp->if_vlantrunk
    will always be NULL for the non-vlan case.
  PR:             86429
  Submitted by:   Pieter de Boer (with changes)
  Revision  Changes    Path  +18 -0     src/sys/net/if_tap.c

More information about the cvs-src mailing list