diff options
author | Jouni Malinen <j@w1.fi> | 2009-01-08 06:32:01 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-01-29 16:00:02 -0500 |
commit | 765cb46a3fc856245ea68a7c961ac87c77e4ae2d (patch) | |
tree | 210cb9cd260430221ddb3be9620ee8ae90ecee34 /net/mac80211/key.h | |
parent | fb7333367632c67d8b6b06fb8d906cdabb11b02a (diff) |
mac80211: 802.11w - Add BIP (AES-128-CMAC)
Implement Broadcast/Multicast Integrity Protocol for management frame
protection. This patch adds the needed definitions for the new
information element (MMIE) and implementation for the new "encryption"
type (though, BIP is actually not encrypting data, it provides only
integrity protection). These routines will be used by a follow-on patch
that enables BIP for multicast/broadcast robust management frames.
Signed-off-by: Jouni Malinen <j@w1.fi>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/key.h')
-rw-r--r-- | net/mac80211/key.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/net/mac80211/key.h b/net/mac80211/key.h index 425816e0996c..73ac28ca2ede 100644 --- a/net/mac80211/key.h +++ b/net/mac80211/key.h | |||
@@ -96,6 +96,16 @@ struct ieee80211_key { | |||
96 | u8 tx_crypto_buf[6 * AES_BLOCK_LEN]; | 96 | u8 tx_crypto_buf[6 * AES_BLOCK_LEN]; |
97 | u8 rx_crypto_buf[6 * AES_BLOCK_LEN]; | 97 | u8 rx_crypto_buf[6 * AES_BLOCK_LEN]; |
98 | } ccmp; | 98 | } ccmp; |
99 | struct { | ||
100 | u8 tx_pn[6]; | ||
101 | u8 rx_pn[6]; | ||
102 | struct crypto_cipher *tfm; | ||
103 | u32 replays; /* dot11RSNAStatsCMACReplays */ | ||
104 | u32 icverrors; /* dot11RSNAStatsCMACICVErrors */ | ||
105 | /* scratch buffers for virt_to_page() (crypto API) */ | ||
106 | u8 tx_crypto_buf[2 * AES_BLOCK_LEN]; | ||
107 | u8 rx_crypto_buf[2 * AES_BLOCK_LEN]; | ||
108 | } aes_cmac; | ||
99 | } u; | 109 | } u; |
100 | 110 | ||
101 | /* number of times this key has been used */ | 111 | /* number of times this key has been used */ |