I narrowed the search to a memmove() called from
skb_reorder_vlan_header() in net/core/skbuff.c.
> memmove(skb->data - ETH_HLEN, skb->data - skb->mac_len - VLAN_HLEN,
>2 * ETH_ALEN);
Calling skb_reset_mac_len() after skb_reset_mac_header() before
calling br_allowed_ingress() in net/br
I tracked down the function responsible for changing the MAC header.
It is skb_vlan_untag() called from __allowed_ingress() in
net/bridge/br_vlan.c. Before skb_vlan_untag() is called, the MAC
headers are perfect and afterward they are altered as previously
described. I'll continue digging into that
While attempting to send ARP DAD packets on a bridge device, I noticed
that hosts attached to the bridge ports were not responding. After
digging in with tcpdump/wireshark, I noticed that the MAC addresses of
the packets (the first 12 bytes of the Ethernet frame) were wrong and
were an exact duplic
3 matches
Mail list logo