Use ETHER_BPF_MTAP() instead of BPF_MTAP() here. It's possible
incoming packets have had their 802.1Q tags processed by the hardware, resulting in them being stripped from the packets, and placed on the mbuf. This fixes the processing of 802.1Q tags when hardware offload of 802.1Q tags is enabled.
This commit is contained in:
parent
2cbcccc774
commit
d05d46160a
@ -558,9 +558,10 @@ ether_input(struct ifnet *ifp, struct mbuf *m)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Give bpf a chance at the packet.
|
||||
* Give bpf a chance at the packet. Process any 802.1Q tags
|
||||
* that may have been attached to the mbuf.
|
||||
*/
|
||||
BPF_MTAP(ifp, m);
|
||||
ETHER_BPF_MTAP(ifp, m);
|
||||
|
||||
/* If the CRC is still on the packet, trim it off. */
|
||||
if (m->m_flags & M_HASFCS) {
|
||||
|
Loading…
Reference in New Issue
Block a user