batman-adv: drop STP over batman
Signed-off-by: Simon Wunderlich <siwu@hrz.tu-chemnitz.de> Signed-off-by: Antonio Quartulli <ordex@autistici.org>
This commit is contained in:
parent
fe2da6ff27
commit
b1a8c04b8a
|
@ -130,6 +130,8 @@ static int interface_tx(struct sk_buff *skb, struct net_device *soft_iface)
|
||||||
struct hard_iface *primary_if = NULL;
|
struct hard_iface *primary_if = NULL;
|
||||||
struct bcast_packet *bcast_packet;
|
struct bcast_packet *bcast_packet;
|
||||||
struct vlan_ethhdr *vhdr;
|
struct vlan_ethhdr *vhdr;
|
||||||
|
static const uint8_t stp_addr[ETH_ALEN] = {0x01, 0x80, 0xC2, 0x00, 0x00,
|
||||||
|
0x00};
|
||||||
unsigned int header_len = 0;
|
unsigned int header_len = 0;
|
||||||
int data_len = skb->len, ret;
|
int data_len = skb->len, ret;
|
||||||
short vid = -1;
|
short vid = -1;
|
||||||
|
@ -159,6 +161,12 @@ static int interface_tx(struct sk_buff *skb, struct net_device *soft_iface)
|
||||||
/* Register the client MAC in the transtable */
|
/* Register the client MAC in the transtable */
|
||||||
tt_local_add(soft_iface, ethhdr->h_source, skb->skb_iif);
|
tt_local_add(soft_iface, ethhdr->h_source, skb->skb_iif);
|
||||||
|
|
||||||
|
/* don't accept stp packets. STP does not help in meshes.
|
||||||
|
* better use the bridge loop avoidance ...
|
||||||
|
*/
|
||||||
|
if (compare_eth(ethhdr->h_dest, stp_addr))
|
||||||
|
goto dropped;
|
||||||
|
|
||||||
if (is_multicast_ether_addr(ethhdr->h_dest)) {
|
if (is_multicast_ether_addr(ethhdr->h_dest)) {
|
||||||
do_bcast = true;
|
do_bcast = true;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue