diff options
-rw-r--r-- | include/net/mac80211.h | 3 | ||||
-rw-r--r-- | net/mac80211/key.c | 7 |
2 files changed, 10 insertions, 0 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h index 27ef9f761ac5..740c11ca066c 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h | |||
@@ -621,11 +621,14 @@ enum ieee80211_key_alg { | |||
621 | * @IEEE80211_KEY_FLAG_GENERATE_MMIC: This flag should be set by | 621 | * @IEEE80211_KEY_FLAG_GENERATE_MMIC: This flag should be set by |
622 | * the driver for a TKIP key if it requires Michael MIC | 622 | * the driver for a TKIP key if it requires Michael MIC |
623 | * generation in software. | 623 | * generation in software. |
624 | * @IEEE80211_KEY_FLAG_PAIRWISE: Set by mac80211, this flag indicates | ||
625 | * that the key is pairwise rather then a shared key. | ||
624 | */ | 626 | */ |
625 | enum ieee80211_key_flags { | 627 | enum ieee80211_key_flags { |
626 | IEEE80211_KEY_FLAG_WMM_STA = 1<<0, | 628 | IEEE80211_KEY_FLAG_WMM_STA = 1<<0, |
627 | IEEE80211_KEY_FLAG_GENERATE_IV = 1<<1, | 629 | IEEE80211_KEY_FLAG_GENERATE_IV = 1<<1, |
628 | IEEE80211_KEY_FLAG_GENERATE_MMIC= 1<<2, | 630 | IEEE80211_KEY_FLAG_GENERATE_MMIC= 1<<2, |
631 | IEEE80211_KEY_FLAG_PAIRWISE = 1<<3, | ||
629 | }; | 632 | }; |
630 | 633 | ||
631 | /** | 634 | /** |
diff --git a/net/mac80211/key.c b/net/mac80211/key.c index 150d66dbda9d..88b211af7c1f 100644 --- a/net/mac80211/key.c +++ b/net/mac80211/key.c | |||
@@ -323,6 +323,13 @@ void ieee80211_key_link(struct ieee80211_key *key, | |||
323 | */ | 323 | */ |
324 | if (sta->flags & WLAN_STA_WME) | 324 | if (sta->flags & WLAN_STA_WME) |
325 | key->conf.flags |= IEEE80211_KEY_FLAG_WMM_STA; | 325 | key->conf.flags |= IEEE80211_KEY_FLAG_WMM_STA; |
326 | |||
327 | /* | ||
328 | * This key is for a specific sta interface, | ||
329 | * inform the driver that it should try to store | ||
330 | * this key as pairwise key. | ||
331 | */ | ||
332 | key->conf.flags |= IEEE80211_KEY_FLAG_PAIRWISE; | ||
326 | } else { | 333 | } else { |
327 | if (sdata->vif.type == IEEE80211_IF_TYPE_STA) { | 334 | if (sdata->vif.type == IEEE80211_IF_TYPE_STA) { |
328 | struct sta_info *ap; | 335 | struct sta_info *ap; |