forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-02-19 1c055e55a242a33e574e48be530e06770a210dcd
kernel/drivers/net/wireless/rockchip_wlan/rtl8723cs/core/crypto/ccmp.c
....@@ -14,8 +14,8 @@
1414
1515
1616
17
-static void ccmp_aad_nonce(_adapter *padapter, const struct ieee80211_hdr *hdr, const u8 *data,
18
- u8 *aad, size_t *aad_len, u8 *nonce)
17
+static void ccmp_aad_nonce(const struct ieee80211_hdr *hdr, const u8 *data,
18
+ u8 *aad, size_t *aad_len, u8 *nonce)
1919 {
2020 u16 fc, stype, seq;
2121 int qos = 0, addr4 = 0;
....@@ -58,8 +58,7 @@
5858 pos += addr4 * ETH_ALEN;
5959 if (qos) {
6060 pos[0] &= ~0x70;
61
- /* only spp mode need to refer QoS bit7 */
62
- if (padapter->registrypriv.amsdu_mode != RTW_AMSDU_MODE_SPP)
61
+ if (1 /* FIX: either device has SPP A-MSDU Capab = 0 */)
6362 pos[0] &= ~0x80;
6463 pos++;
6564 *pos++ = 0x00;
....@@ -135,9 +134,8 @@
135134 }
136135
137136
138
-u8 * ccmp_decrypt(_adapter *padapter, const u8 *tk, const struct ieee80211_hdr *hdr,
139
- const u8 *data, size_t data_len, size_t *decrypted_len)
140
-
137
+u8 * ccmp_decrypt(const u8 *tk, const struct ieee80211_hdr *hdr,
138
+ const u8 *data, size_t data_len, size_t *decrypted_len)
141139 {
142140 u8 aad[30], nonce[13];
143141 size_t aad_len;
....@@ -154,7 +152,7 @@
154152 mlen = data_len - 8 - 8;
155153
156154 os_memset(aad, 0, sizeof(aad));
157
- ccmp_aad_nonce(padapter, hdr, data, aad, &aad_len, nonce);
155
+ ccmp_aad_nonce(hdr, data, aad, &aad_len, nonce);
158156 wpa_hexdump(_MSG_EXCESSIVE_, "CCMP AAD", aad, aad_len);
159157 wpa_hexdump(_MSG_EXCESSIVE_, "CCMP nonce", nonce, 13);
160158
....@@ -188,9 +186,8 @@
188186 }
189187
190188
191
-u8 * ccmp_encrypt(_adapter *padapter, const u8 *tk, u8 *frame, size_t len, size_t hdrlen, u8 *qos,
192
- u8 *pn, int keyid, size_t *encrypted_len)
193
-
189
+u8 * ccmp_encrypt(const u8 *tk, u8 *frame, size_t len, size_t hdrlen, u8 *qos,
190
+ u8 *pn, int keyid, size_t *encrypted_len)
194191 {
195192 u8 aad[30], nonce[13];
196193 size_t aad_len, plen;
....@@ -228,7 +225,7 @@
228225 }
229226
230227 os_memset(aad, 0, sizeof(aad));
231
- ccmp_aad_nonce(padapter, hdr, crypt + hdrlen, aad, &aad_len, nonce);
228
+ ccmp_aad_nonce(hdr, crypt + hdrlen, aad, &aad_len, nonce);
232229 wpa_hexdump(_MSG_EXCESSIVE_, "CCMP AAD", aad, aad_len);
233230 wpa_hexdump(_MSG_EXCESSIVE_, "CCMP nonce", nonce, 13);
234231
....@@ -288,9 +285,8 @@
288285 }
289286
290287
291
-u8 * ccmp_256_decrypt(_adapter *padapter, const u8 *tk, const struct ieee80211_hdr *hdr,
292
- const u8 *data, size_t data_len, size_t *decrypted_len)
293
-
288
+u8 * ccmp_256_decrypt(const u8 *tk, const struct ieee80211_hdr *hdr,
289
+ const u8 *data, size_t data_len, size_t *decrypted_len)
294290 {
295291 u8 aad[30], nonce[13];
296292 size_t aad_len;
....@@ -307,7 +303,7 @@
307303 mlen = data_len - 8 - 16;
308304
309305 os_memset(aad, 0, sizeof(aad));
310
- ccmp_aad_nonce(padapter, hdr, data, aad, &aad_len, nonce);
306
+ ccmp_aad_nonce(hdr, data, aad, &aad_len, nonce);
311307 wpa_hexdump(_MSG_EXCESSIVE_, "CCMP-256 AAD", aad, aad_len);
312308 wpa_hexdump(_MSG_EXCESSIVE_, "CCMP-256 nonce", nonce, 13);
313309
....@@ -330,9 +326,8 @@
330326 }
331327
332328
333
-u8 * ccmp_256_encrypt(_adapter *padapter, const u8 *tk, u8 *frame, size_t len, size_t hdrlen,
334
- u8 *qos, u8 *pn, int keyid, size_t *encrypted_len)
335
-
329
+u8 * ccmp_256_encrypt(const u8 *tk, u8 *frame, size_t len, size_t hdrlen,
330
+ u8 *qos, u8 *pn, int keyid, size_t *encrypted_len)
336331 {
337332 u8 aad[30], nonce[13];
338333 size_t aad_len, plen;
....@@ -370,7 +365,7 @@
370365 }
371366
372367 os_memset(aad, 0, sizeof(aad));
373
- ccmp_aad_nonce(padapter, hdr, crypt + hdrlen, aad, &aad_len, nonce);
368
+ ccmp_aad_nonce(hdr, crypt + hdrlen, aad, &aad_len, nonce);
374369 wpa_hexdump(_MSG_EXCESSIVE_, "CCMP-256 AAD", aad, aad_len);
375370 wpa_hexdump(_MSG_EXCESSIVE_, "CCMP-256 nonce", nonce, 13);
376371