mac80211: Moved mesh action codes to a more visible location
Grouped mesh action codes together with the other action codes in ieee80211.h. Signed-off-by: Javier Cardona <javier@cozybit.com> Reviewed-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
60ece4047e
commit
97ad9139fd
6 changed files with 10 additions and 10 deletions
|
@ -1211,6 +1211,8 @@ enum ieee80211_category {
|
||||||
WLAN_CATEGORY_SA_QUERY = 8,
|
WLAN_CATEGORY_SA_QUERY = 8,
|
||||||
WLAN_CATEGORY_PROTECTED_DUAL_OF_ACTION = 9,
|
WLAN_CATEGORY_PROTECTED_DUAL_OF_ACTION = 9,
|
||||||
WLAN_CATEGORY_WMM = 17,
|
WLAN_CATEGORY_WMM = 17,
|
||||||
|
WLAN_CATEGORY_MESH_PLINK = 30, /* Pending ANA approval */
|
||||||
|
WLAN_CATEGORY_MESH_PATH_SEL = 32, /* Pending ANA approval */
|
||||||
WLAN_CATEGORY_VENDOR_SPECIFIC_PROTECTED = 126,
|
WLAN_CATEGORY_VENDOR_SPECIFIC_PROTECTED = 126,
|
||||||
WLAN_CATEGORY_VENDOR_SPECIFIC = 127,
|
WLAN_CATEGORY_VENDOR_SPECIFIC = 127,
|
||||||
};
|
};
|
||||||
|
|
|
@ -600,10 +600,10 @@ static void ieee80211_mesh_rx_mgmt_action(struct ieee80211_sub_if_data *sdata,
|
||||||
struct ieee80211_rx_status *rx_status)
|
struct ieee80211_rx_status *rx_status)
|
||||||
{
|
{
|
||||||
switch (mgmt->u.action.category) {
|
switch (mgmt->u.action.category) {
|
||||||
case MESH_PLINK_CATEGORY:
|
case WLAN_CATEGORY_MESH_PLINK:
|
||||||
mesh_rx_plink_frame(sdata, mgmt, len, rx_status);
|
mesh_rx_plink_frame(sdata, mgmt, len, rx_status);
|
||||||
break;
|
break;
|
||||||
case MESH_PATH_SEL_CATEGORY:
|
case WLAN_CATEGORY_MESH_PATH_SEL:
|
||||||
mesh_rx_path_sel_frame(sdata, mgmt, len);
|
mesh_rx_path_sel_frame(sdata, mgmt, len);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -209,8 +209,6 @@ struct mesh_rmc {
|
||||||
#define MESH_MAX_MPATHS 1024
|
#define MESH_MAX_MPATHS 1024
|
||||||
|
|
||||||
/* Pending ANA approval */
|
/* Pending ANA approval */
|
||||||
#define MESH_PLINK_CATEGORY 30
|
|
||||||
#define MESH_PATH_SEL_CATEGORY 32
|
|
||||||
#define MESH_PATH_SEL_ACTION 0
|
#define MESH_PATH_SEL_ACTION 0
|
||||||
|
|
||||||
/* PERR reason codes */
|
/* PERR reason codes */
|
||||||
|
|
|
@ -131,7 +131,7 @@ static int mesh_path_sel_frame_tx(enum mpath_frame_type action, u8 flags,
|
||||||
memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
|
memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
|
||||||
/* BSSID == SA */
|
/* BSSID == SA */
|
||||||
memcpy(mgmt->bssid, sdata->vif.addr, ETH_ALEN);
|
memcpy(mgmt->bssid, sdata->vif.addr, ETH_ALEN);
|
||||||
mgmt->u.action.category = MESH_PATH_SEL_CATEGORY;
|
mgmt->u.action.category = WLAN_CATEGORY_MESH_PATH_SEL;
|
||||||
mgmt->u.action.u.mesh_action.action_code = MESH_PATH_SEL_ACTION;
|
mgmt->u.action.u.mesh_action.action_code = MESH_PATH_SEL_ACTION;
|
||||||
|
|
||||||
switch (action) {
|
switch (action) {
|
||||||
|
@ -224,7 +224,7 @@ int mesh_path_error_tx(u8 ttl, u8 *target, __le32 target_sn,
|
||||||
memcpy(mgmt->da, ra, ETH_ALEN);
|
memcpy(mgmt->da, ra, ETH_ALEN);
|
||||||
memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
|
memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
|
||||||
/* BSSID is left zeroed, wildcard value */
|
/* BSSID is left zeroed, wildcard value */
|
||||||
mgmt->u.action.category = MESH_PATH_SEL_CATEGORY;
|
mgmt->u.action.category = WLAN_CATEGORY_MESH_PATH_SEL;
|
||||||
mgmt->u.action.u.mesh_action.action_code = MESH_PATH_SEL_ACTION;
|
mgmt->u.action.u.mesh_action.action_code = MESH_PATH_SEL_ACTION;
|
||||||
ie_len = 15;
|
ie_len = 15;
|
||||||
pos = skb_put(skb, 2 + ie_len);
|
pos = skb_put(skb, 2 + ie_len);
|
||||||
|
|
|
@ -171,7 +171,7 @@ static int mesh_plink_frame_tx(struct ieee80211_sub_if_data *sdata,
|
||||||
memcpy(mgmt->da, da, ETH_ALEN);
|
memcpy(mgmt->da, da, ETH_ALEN);
|
||||||
memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
|
memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
|
||||||
/* BSSID is left zeroed, wildcard value */
|
/* BSSID is left zeroed, wildcard value */
|
||||||
mgmt->u.action.category = MESH_PLINK_CATEGORY;
|
mgmt->u.action.category = WLAN_CATEGORY_MESH_PLINK;
|
||||||
mgmt->u.action.u.plink_action.action_code = action;
|
mgmt->u.action.u.plink_action.action_code = action;
|
||||||
|
|
||||||
if (action == PLINK_CLOSE)
|
if (action == PLINK_CLOSE)
|
||||||
|
|
|
@ -490,7 +490,7 @@ ieee80211_rx_mesh_check(struct ieee80211_rx_data *rx)
|
||||||
|
|
||||||
if (ieee80211_is_action(hdr->frame_control)) {
|
if (ieee80211_is_action(hdr->frame_control)) {
|
||||||
mgmt = (struct ieee80211_mgmt *)hdr;
|
mgmt = (struct ieee80211_mgmt *)hdr;
|
||||||
if (mgmt->u.action.category != MESH_PLINK_CATEGORY)
|
if (mgmt->u.action.category != WLAN_CATEGORY_MESH_PLINK)
|
||||||
return RX_DROP_MONITOR;
|
return RX_DROP_MONITOR;
|
||||||
return RX_CONTINUE;
|
return RX_CONTINUE;
|
||||||
}
|
}
|
||||||
|
@ -1994,8 +1994,8 @@ ieee80211_rx_h_action(struct ieee80211_rx_data *rx)
|
||||||
goto handled;
|
goto handled;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case MESH_PLINK_CATEGORY:
|
case WLAN_CATEGORY_MESH_PLINK:
|
||||||
case MESH_PATH_SEL_CATEGORY:
|
case WLAN_CATEGORY_MESH_PATH_SEL:
|
||||||
if (ieee80211_vif_is_mesh(&sdata->vif))
|
if (ieee80211_vif_is_mesh(&sdata->vif))
|
||||||
return ieee80211_mesh_rx_mgmt(sdata, rx->skb);
|
return ieee80211_mesh_rx_mgmt(sdata, rx->skb);
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in a new issue