diff options
Diffstat (limited to 'net/bridge/br_stp_bpdu.c')
-rw-r--r-- | net/bridge/br_stp_bpdu.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/bridge/br_stp_bpdu.c b/net/bridge/br_stp_bpdu.c index a99e90e20952..ed3a5441a47e 100644 --- a/net/bridge/br_stp_bpdu.c +++ b/net/bridge/br_stp_bpdu.c | |||
@@ -47,7 +47,7 @@ static void br_send_bpdu(struct net_bridge_port *p, unsigned char *data, int len | |||
47 | skb->dev = dev; | 47 | skb->dev = dev; |
48 | skb->protocol = htons(ETH_P_802_2); | 48 | skb->protocol = htons(ETH_P_802_2); |
49 | skb->mac.raw = skb_put(skb, size); | 49 | skb->mac.raw = skb_put(skb, size); |
50 | memcpy(skb->mac.raw, bridge_ula, ETH_ALEN); | 50 | memcpy(skb->mac.raw, p->br->group_addr, ETH_ALEN); |
51 | memcpy(skb->mac.raw+ETH_ALEN, dev->dev_addr, ETH_ALEN); | 51 | memcpy(skb->mac.raw+ETH_ALEN, dev->dev_addr, ETH_ALEN); |
52 | skb->mac.raw[2*ETH_ALEN] = 0; | 52 | skb->mac.raw[2*ETH_ALEN] = 0; |
53 | skb->mac.raw[2*ETH_ALEN+1] = length; | 53 | skb->mac.raw[2*ETH_ALEN+1] = length; |
@@ -171,7 +171,7 @@ int br_stp_rcv(struct sk_buff *skb, struct net_device *dev, | |||
171 | || !(br->dev->flags & IFF_UP)) | 171 | || !(br->dev->flags & IFF_UP)) |
172 | goto out; | 172 | goto out; |
173 | 173 | ||
174 | if (compare_ether_addr(dest, bridge_ula) != 0) | 174 | if (compare_ether_addr(dest, br->group_addr) != 0) |
175 | goto out; | 175 | goto out; |
176 | 176 | ||
177 | buf = skb_pull(skb, 3); | 177 | buf = skb_pull(skb, 3); |