aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/cfg80211.h
diff options
context:
space:
mode:
authorJouni Malinen <jouni@qca.qualcomm.com>2013-02-27 10:14:27 -0500
committerJohannes Berg <johannes.berg@intel.com>2013-03-06 10:35:51 -0500
commit355199e02b831fd4f652c34d6c7673d973da1369 (patch)
treebd4bfa7f90b431aa87342dd008d6dcc0f7d3e825 /include/net/cfg80211.h
parent723d568aa585028a145c79a744dba2e018815873 (diff)
cfg80211: Extend support for IEEE 802.11r Fast BSS Transition
Add NL80211_CMD_UPDATE_FT_IES to support update of FT IEs to the WLAN driver and NL80211_CMD_FT_EVENT to send FT events from the WLAN driver. This will carry the target AP's MAC address along with the relevant Information Elements. This event is used to report received FT IEs (MDIE, FTIE, RSN IE, TIE, RICIE). These changes allow FT to be supported with drivers that use an internal SME instead of user space option (like FT implementation in wpa_supplicant with mac80211-based drivers). Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include/net/cfg80211.h')
-rw-r--r--include/net/cfg80211.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index 73a523901c73..dfef0d5b5d3d 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -1763,6 +1763,21 @@ struct cfg80211_gtk_rekey_data {
1763}; 1763};
1764 1764
1765/** 1765/**
1766 * struct cfg80211_update_ft_ies_params - FT IE Information
1767 *
1768 * This structure provides information needed to update the fast transition IE
1769 *
1770 * @md: The Mobility Domain ID, 2 Octet value
1771 * @ie: Fast Transition IEs
1772 * @ie_len: Length of ft_ie in octets
1773 */
1774struct cfg80211_update_ft_ies_params {
1775 u16 md;
1776 const u8 *ie;
1777 size_t ie_len;
1778};
1779
1780/**
1766 * struct cfg80211_ops - backend description for wireless configuration 1781 * struct cfg80211_ops - backend description for wireless configuration
1767 * 1782 *
1768 * This struct is registered by fullmac card drivers and/or wireless stacks 1783 * This struct is registered by fullmac card drivers and/or wireless stacks
@@ -2208,6 +2223,8 @@ struct cfg80211_ops {
2208 int (*start_radar_detection)(struct wiphy *wiphy, 2223 int (*start_radar_detection)(struct wiphy *wiphy,
2209 struct net_device *dev, 2224 struct net_device *dev,
2210 struct cfg80211_chan_def *chandef); 2225 struct cfg80211_chan_def *chandef);
2226 int (*update_ft_ies)(struct wiphy *wiphy, struct net_device *dev,
2227 struct cfg80211_update_ft_ies_params *ftie);
2211}; 2228};
2212 2229
2213/* 2230/*
@@ -4045,6 +4062,30 @@ u32 cfg80211_calculate_bitrate(struct rate_info *rate);
4045void cfg80211_unregister_wdev(struct wireless_dev *wdev); 4062void cfg80211_unregister_wdev(struct wireless_dev *wdev);
4046 4063
4047/** 4064/**
4065 * struct cfg80211_ft_event - FT Information Elements
4066 * @ies: FT IEs
4067 * @ies_len: length of the FT IE in bytes
4068 * @target_ap: target AP's MAC address
4069 * @ric_ies: RIC IE
4070 * @ric_ies_len: length of the RIC IE in bytes
4071 */
4072struct cfg80211_ft_event_params {
4073 const u8 *ies;
4074 size_t ies_len;
4075 const u8 *target_ap;
4076 const u8 *ric_ies;
4077 size_t ric_ies_len;
4078};
4079
4080/**
4081 * cfg80211_ft_event - notify userspace about FT IE and RIC IE
4082 * @netdev: network device
4083 * @ft_event: IE information
4084 */
4085void cfg80211_ft_event(struct net_device *netdev,
4086 struct cfg80211_ft_event_params *ft_event);
4087
4088/**
4048 * cfg80211_get_p2p_attr - find and copy a P2P attribute from IE buffer 4089 * cfg80211_get_p2p_attr - find and copy a P2P attribute from IE buffer
4049 * @ies: the input IE buffer 4090 * @ies: the input IE buffer
4050 * @len: the input length 4091 * @len: the input length