aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/debugfs_key.c
diff options
context:
space:
mode:
authorJouni Malinen <jouni@qca.qualcomm.com>2015-01-24 12:52:08 -0500
committerJohannes Berg <johannes.berg@intel.com>2015-01-27 05:09:13 -0500
commit56c52da2d554f081e8fce58ecbcf6a40c605b95b (patch)
tree9c28bdf5c73f2f2a3a6d87880a9422e6d16f9d30 /net/mac80211/debugfs_key.c
parent2b2ba0db1c820d04d5143452d70012cd44d7b578 (diff)
mac80111: Add BIP-CMAC-256 cipher
This allows mac80211 to configure BIP-CMAC-256 to the driver and also use software-implementation within mac80211 when the driver does not support this with hardware accelaration. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/debugfs_key.c')
-rw-r--r--net/mac80211/debugfs_key.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/mac80211/debugfs_key.c b/net/mac80211/debugfs_key.c
index 64de07b16092..d1b60eb014a8 100644
--- a/net/mac80211/debugfs_key.c
+++ b/net/mac80211/debugfs_key.c
@@ -101,6 +101,7 @@ static ssize_t key_tx_spec_read(struct file *file, char __user *userbuf,
101 (u8)(pn >> 16), (u8)(pn >> 8), (u8)pn); 101 (u8)(pn >> 16), (u8)(pn >> 8), (u8)pn);
102 break; 102 break;
103 case WLAN_CIPHER_SUITE_AES_CMAC: 103 case WLAN_CIPHER_SUITE_AES_CMAC:
104 case WLAN_CIPHER_SUITE_BIP_CMAC_256:
104 pn = atomic64_read(&key->u.aes_cmac.tx_pn); 105 pn = atomic64_read(&key->u.aes_cmac.tx_pn);
105 len = scnprintf(buf, sizeof(buf), "%02x%02x%02x%02x%02x%02x\n", 106 len = scnprintf(buf, sizeof(buf), "%02x%02x%02x%02x%02x%02x\n",
106 (u8)(pn >> 40), (u8)(pn >> 32), (u8)(pn >> 24), 107 (u8)(pn >> 40), (u8)(pn >> 32), (u8)(pn >> 24),
@@ -153,6 +154,7 @@ static ssize_t key_rx_spec_read(struct file *file, char __user *userbuf,
153 len = p - buf; 154 len = p - buf;
154 break; 155 break;
155 case WLAN_CIPHER_SUITE_AES_CMAC: 156 case WLAN_CIPHER_SUITE_AES_CMAC:
157 case WLAN_CIPHER_SUITE_BIP_CMAC_256:
156 rpn = key->u.aes_cmac.rx_pn; 158 rpn = key->u.aes_cmac.rx_pn;
157 p += scnprintf(p, sizeof(buf)+buf-p, 159 p += scnprintf(p, sizeof(buf)+buf-p,
158 "%02x%02x%02x%02x%02x%02x\n", 160 "%02x%02x%02x%02x%02x%02x\n",
@@ -191,6 +193,7 @@ static ssize_t key_replays_read(struct file *file, char __user *userbuf,
191 len = scnprintf(buf, sizeof(buf), "%u\n", key->u.ccmp.replays); 193 len = scnprintf(buf, sizeof(buf), "%u\n", key->u.ccmp.replays);
192 break; 194 break;
193 case WLAN_CIPHER_SUITE_AES_CMAC: 195 case WLAN_CIPHER_SUITE_AES_CMAC:
196 case WLAN_CIPHER_SUITE_BIP_CMAC_256:
194 len = scnprintf(buf, sizeof(buf), "%u\n", 197 len = scnprintf(buf, sizeof(buf), "%u\n",
195 key->u.aes_cmac.replays); 198 key->u.aes_cmac.replays);
196 break; 199 break;
@@ -214,6 +217,7 @@ static ssize_t key_icverrors_read(struct file *file, char __user *userbuf,
214 217
215 switch (key->conf.cipher) { 218 switch (key->conf.cipher) {
216 case WLAN_CIPHER_SUITE_AES_CMAC: 219 case WLAN_CIPHER_SUITE_AES_CMAC:
220 case WLAN_CIPHER_SUITE_BIP_CMAC_256:
217 len = scnprintf(buf, sizeof(buf), "%u\n", 221 len = scnprintf(buf, sizeof(buf), "%u\n",
218 key->u.aes_cmac.icverrors); 222 key->u.aes_cmac.icverrors);
219 break; 223 break;