diff options
author | Johannes Berg <johannes.berg@intel.com> | 2010-10-05 13:39:30 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-10-06 16:30:40 -0400 |
commit | e31b82136d1adc7a599b6e99d3321e5831841f5a (patch) | |
tree | c72d78d4cccfd08587e909c7efe59956f1cbc23e /include/net/cfg80211.h | |
parent | 53f73c09d64f1fa7d7e6e8b6bb7468d42eddc92d (diff) |
cfg80211/mac80211: allow per-station GTKs
This adds API to allow adding per-station GTKs,
updates mac80211 to support it, and also allows
drivers to remove a key from hwaccel again when
this may be necessary due to multiple GTKs.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/net/cfg80211.h')
-rw-r--r-- | include/net/cfg80211.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index 5f4d8acf7abb..0f77515266b8 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h | |||
@@ -1130,13 +1130,14 @@ struct cfg80211_ops { | |||
1130 | struct vif_params *params); | 1130 | struct vif_params *params); |
1131 | 1131 | ||
1132 | int (*add_key)(struct wiphy *wiphy, struct net_device *netdev, | 1132 | int (*add_key)(struct wiphy *wiphy, struct net_device *netdev, |
1133 | u8 key_index, const u8 *mac_addr, | 1133 | u8 key_index, bool pairwise, const u8 *mac_addr, |
1134 | struct key_params *params); | 1134 | struct key_params *params); |
1135 | int (*get_key)(struct wiphy *wiphy, struct net_device *netdev, | 1135 | int (*get_key)(struct wiphy *wiphy, struct net_device *netdev, |
1136 | u8 key_index, const u8 *mac_addr, void *cookie, | 1136 | u8 key_index, bool pairwise, const u8 *mac_addr, |
1137 | void *cookie, | ||
1137 | void (*callback)(void *cookie, struct key_params*)); | 1138 | void (*callback)(void *cookie, struct key_params*)); |
1138 | int (*del_key)(struct wiphy *wiphy, struct net_device *netdev, | 1139 | int (*del_key)(struct wiphy *wiphy, struct net_device *netdev, |
1139 | u8 key_index, const u8 *mac_addr); | 1140 | u8 key_index, bool pairwise, const u8 *mac_addr); |
1140 | int (*set_default_key)(struct wiphy *wiphy, | 1141 | int (*set_default_key)(struct wiphy *wiphy, |
1141 | struct net_device *netdev, | 1142 | struct net_device *netdev, |
1142 | u8 key_index); | 1143 | u8 key_index); |
@@ -1304,6 +1305,7 @@ struct cfg80211_ops { | |||
1304 | * @WIPHY_FLAG_CONTROL_PORT_PROTOCOL: This device supports setting the | 1305 | * @WIPHY_FLAG_CONTROL_PORT_PROTOCOL: This device supports setting the |
1305 | * control port protocol ethertype. The device also honours the | 1306 | * control port protocol ethertype. The device also honours the |
1306 | * control_port_no_encrypt flag. | 1307 | * control_port_no_encrypt flag. |
1308 | * @WIPHY_FLAG_IBSS_RSN: The device supports IBSS RSN. | ||
1307 | */ | 1309 | */ |
1308 | enum wiphy_flags { | 1310 | enum wiphy_flags { |
1309 | WIPHY_FLAG_CUSTOM_REGULATORY = BIT(0), | 1311 | WIPHY_FLAG_CUSTOM_REGULATORY = BIT(0), |
@@ -1314,6 +1316,7 @@ enum wiphy_flags { | |||
1314 | WIPHY_FLAG_4ADDR_AP = BIT(5), | 1316 | WIPHY_FLAG_4ADDR_AP = BIT(5), |
1315 | WIPHY_FLAG_4ADDR_STATION = BIT(6), | 1317 | WIPHY_FLAG_4ADDR_STATION = BIT(6), |
1316 | WIPHY_FLAG_CONTROL_PORT_PROTOCOL = BIT(7), | 1318 | WIPHY_FLAG_CONTROL_PORT_PROTOCOL = BIT(7), |
1319 | WIPHY_FLAG_IBSS_RSN = BIT(7), | ||
1317 | }; | 1320 | }; |
1318 | 1321 | ||
1319 | struct mac_address { | 1322 | struct mac_address { |