cvs commit: src/sys/net if_tap.c

From: Bruce M Simpson <bms_at_FreeBSD.org>
Date: Sat, 24 Feb 2007 11:11:36 +0000 (UTC)
bms         2007-02-24 11:11:36 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_6)
    sys/net              if_tap.c 
  Log:
  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
  1.55.2.7  +18 -0     src/sys/net/if_tap.c
Received on Sat Feb 24 2007 - 11:11:36 UTC