mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 03:01:39 -04:00
batman-adv: set the TAG flag for the vid passed to BLA
When receiving or sending a packet a packet on a VLAN, the
vid has to be marked with the TAG flag in order to make any
component in batman-adv understand that the packet is coming
from a really tagged network.
This fix the Bridge Loop Avoidance behaviour which was not
able to send announces over VLAN interfaces.
Introduced by 0b1da1765fdb00ca5d53bc95c9abc70dfc9aae5b
("batman-adv: change VID semantic in the BLA code")
Signed-off-by: Antonio Quartulli <[email protected]>
Acked-by: Simon Wunderlich <[email protected]>
Signed-off-by: Marek Lindner <[email protected]>
This commit is contained in:
parent
1ef68ec462
commit
4c18c425b2
1 changed files with 2 additions and 0 deletions
|
|
@ -168,6 +168,7 @@ static int batadv_interface_tx(struct sk_buff *skb,
|
|||
case ETH_P_8021Q:
|
||||
vhdr = (struct vlan_ethhdr *)skb->data;
|
||||
vid = ntohs(vhdr->h_vlan_TCI) & VLAN_VID_MASK;
|
||||
vid |= BATADV_VLAN_HAS_TAG;
|
||||
|
||||
if (vhdr->h_vlan_encapsulated_proto != ethertype)
|
||||
break;
|
||||
|
|
@ -331,6 +332,7 @@ void batadv_interface_rx(struct net_device *soft_iface,
|
|||
case ETH_P_8021Q:
|
||||
vhdr = (struct vlan_ethhdr *)skb->data;
|
||||
vid = ntohs(vhdr->h_vlan_TCI) & VLAN_VID_MASK;
|
||||
vid |= BATADV_VLAN_HAS_TAG;
|
||||
|
||||
if (vhdr->h_vlan_encapsulated_proto != ethertype)
|
||||
break;
|
||||
|
|
|
|||
Loading…
Reference in a new issue