nl80211: prevent additions to old station flags API
We don't really want/need to maintain the old station flags API any more, so refuse changes to new (not yet defined) flags from the old flags API. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
committed by
John W. Linville
parent
bdbc59b35f
commit
3383b5a69d
@@ -1594,6 +1594,8 @@ enum nl80211_sta_flags {
|
|||||||
NL80211_STA_FLAG_MAX = __NL80211_STA_FLAG_AFTER_LAST - 1
|
NL80211_STA_FLAG_MAX = __NL80211_STA_FLAG_AFTER_LAST - 1
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#define NL80211_STA_FLAG_MAX_OLD_API NL80211_STA_FLAG_TDLS_PEER
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* struct nl80211_sta_flag_update - station flags mask/set
|
* struct nl80211_sta_flag_update - station flags mask/set
|
||||||
* @mask: mask of station flags to set
|
* @mask: mask of station flags to set
|
||||||
|
@@ -2410,10 +2410,16 @@ static int parse_station_flags(struct genl_info *info,
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (flag = 1; flag <= NL80211_STA_FLAG_MAX; flag++)
|
for (flag = 1; flag <= NL80211_STA_FLAG_MAX; flag++) {
|
||||||
if (flags[flag])
|
if (flags[flag]) {
|
||||||
params->sta_flags_set |= (1<<flag);
|
params->sta_flags_set |= (1<<flag);
|
||||||
|
|
||||||
|
/* no longer support new API additions in old API */
|
||||||
|
if (flag > NL80211_STA_FLAG_MAX_OLD_API)
|
||||||
|
return -EINVAL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user