cvs commit: src/sys/dev/bge if_bge.c

Christian S.J. Peron csjp at
Mon Sep 18 15:33:36 PDT 2006

Jung-uk Kim wrote:
> jkim        2006-09-18 22:18:22 UTC
>   FreeBSD src repository
>   Modified files:
>     sys/dev/bge          if_bge.c 
>   Log:
>   Do not strip VLAN tag in promiscuous mode.
>   Revision  Changes    Path
>   1.148     +28 -15    src/sys/dev/bge/if_bge.c
I don't think this is right. An interface does not have to be in 
promiscuous mode in order to have BPF peers attached to it. If this is 
being done to ensure that vlan info is preserved for things like 
tcpdump, the correct fix is to use bpf_peers_present() instead.

This issue has been discussed between myself, jhb, and andre for a 
couple of days now. The correct fix is to teach bpf to look at the mbuf 
and re-construct and insert the vlan tags before passing it through 
bpf_filter (and on to any peers), assuming the hardware is handling 
stripping and inserting vlan tags. I have agreed to work on this, time 

Christian S.J. Peron
csjp at FreeBSD.ORG
FreeBSD Committer
FreeBSD Security Team

More information about the cvs-src mailing list