Skip to content

Commit

Permalink
mac80211: don't drop mesh peering frames from unknown STA
Browse files Browse the repository at this point in the history
Previously, mesh peering frames from a STA without a station
entry were being dropped.

Mesh Peering Open and other frames (WLAN_CATEGORY_SELF_PROTECTED)
are valid mesh peering frames even if received from a yet unknown
station; the STA entry will be created in mesh_peer_init later.

The problem didn't occur previously since both STAs receive each
other's beacons which created the STA entry. However, this causes
an unnecessary delay and beacons might not be received if either
node is in PS mode.

Signed-off-by: Marco Porsch <[email protected]>
[reword commit log a bit]
Signed-off-by: Johannes Berg <[email protected]>
  • Loading branch information
Marco Porsch authored and jmberg-intel committed Dec 6, 2012
1 parent 751413e commit 815b809
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion net/mac80211/rx.c
Original file line number Diff line number Diff line change
Expand Up @@ -2333,7 +2333,8 @@ ieee80211_rx_h_action(struct ieee80211_rx_data *rx)
if (len < IEEE80211_MIN_ACTION_SIZE)
return RX_DROP_UNUSABLE;

if (!rx->sta && mgmt->u.action.category != WLAN_CATEGORY_PUBLIC)
if (!rx->sta && mgmt->u.action.category != WLAN_CATEGORY_PUBLIC &&
mgmt->u.action.category != WLAN_CATEGORY_SELF_PROTECTED)
return RX_DROP_UNUSABLE;

if (!(status->rx_flags & IEEE80211_RX_RA_MATCH))
Expand Down

0 comments on commit 815b809

Please sign in to comment.