diff options
Diffstat (limited to 'net/mac80211/mesh_pathtbl.c')
-rw-r--r-- | net/mac80211/mesh_pathtbl.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/net/mac80211/mesh_pathtbl.c b/net/mac80211/mesh_pathtbl.c index 5399e7a9ec6e..a8da23905c70 100644 --- a/net/mac80211/mesh_pathtbl.c +++ b/net/mac80211/mesh_pathtbl.c | |||
@@ -449,6 +449,7 @@ err_path_alloc: | |||
449 | */ | 449 | */ |
450 | void mesh_plink_broken(struct sta_info *sta) | 450 | void mesh_plink_broken(struct sta_info *sta) |
451 | { | 451 | { |
452 | static const u8 bcast[ETH_ALEN] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; | ||
452 | struct mesh_path *mpath; | 453 | struct mesh_path *mpath; |
453 | struct mpath_node *node; | 454 | struct mpath_node *node; |
454 | struct hlist_node *p; | 455 | struct hlist_node *p; |
@@ -467,8 +468,8 @@ void mesh_plink_broken(struct sta_info *sta) | |||
467 | spin_unlock_bh(&mpath->state_lock); | 468 | spin_unlock_bh(&mpath->state_lock); |
468 | mesh_path_error_tx(MESH_TTL, mpath->dst, | 469 | mesh_path_error_tx(MESH_TTL, mpath->dst, |
469 | cpu_to_le32(mpath->sn), | 470 | cpu_to_le32(mpath->sn), |
470 | PERR_RCODE_DEST_UNREACH, | 471 | cpu_to_le16(PERR_RCODE_DEST_UNREACH), |
471 | sdata->dev->broadcast, sdata); | 472 | bcast, sdata); |
472 | } else | 473 | } else |
473 | spin_unlock_bh(&mpath->state_lock); | 474 | spin_unlock_bh(&mpath->state_lock); |
474 | } | 475 | } |
@@ -613,7 +614,7 @@ void mesh_path_discard_frame(struct sk_buff *skb, | |||
613 | if (mpath) | 614 | if (mpath) |
614 | sn = ++mpath->sn; | 615 | sn = ++mpath->sn; |
615 | mesh_path_error_tx(MESH_TTL, skb->data, cpu_to_le32(sn), | 616 | mesh_path_error_tx(MESH_TTL, skb->data, cpu_to_le32(sn), |
616 | PERR_RCODE_NO_ROUTE, ra, sdata); | 617 | cpu_to_le16(PERR_RCODE_NO_ROUTE), ra, sdata); |
617 | } | 618 | } |
618 | 619 | ||
619 | kfree_skb(skb); | 620 | kfree_skb(skb); |