From 8ac6c7a54ed1b98d142dce24b11c6de6a1e239a5 Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Tue, 22 Oct 2024 10:36:11 +0000
Subject: [PATCH] 修改4g拨号为QMI,需要在系统里后台执行quectel-CM
---
kernel/drivers/net/wireless/rockchip_wlan/rtl8723cs/core/crypto/ccmp.c | 35 +++++++++++++++--------------------
1 files changed, 15 insertions(+), 20 deletions(-)
diff --git a/kernel/drivers/net/wireless/rockchip_wlan/rtl8723cs/core/crypto/ccmp.c b/kernel/drivers/net/wireless/rockchip_wlan/rtl8723cs/core/crypto/ccmp.c
index face1df..10390ac 100644
--- a/kernel/drivers/net/wireless/rockchip_wlan/rtl8723cs/core/crypto/ccmp.c
+++ b/kernel/drivers/net/wireless/rockchip_wlan/rtl8723cs/core/crypto/ccmp.c
@@ -14,8 +14,8 @@
-static void ccmp_aad_nonce(_adapter *padapter, const struct ieee80211_hdr *hdr, const u8 *data,
- u8 *aad, size_t *aad_len, u8 *nonce)
+static void ccmp_aad_nonce(const struct ieee80211_hdr *hdr, const u8 *data,
+ u8 *aad, size_t *aad_len, u8 *nonce)
{
u16 fc, stype, seq;
int qos = 0, addr4 = 0;
@@ -58,8 +58,7 @@
pos += addr4 * ETH_ALEN;
if (qos) {
pos[0] &= ~0x70;
- /* only spp mode need to refer QoS bit7 */
- if (padapter->registrypriv.amsdu_mode != RTW_AMSDU_MODE_SPP)
+ if (1 /* FIX: either device has SPP A-MSDU Capab = 0 */)
pos[0] &= ~0x80;
pos++;
*pos++ = 0x00;
@@ -135,9 +134,8 @@
}
-u8 * ccmp_decrypt(_adapter *padapter, const u8 *tk, const struct ieee80211_hdr *hdr,
- const u8 *data, size_t data_len, size_t *decrypted_len)
-
+u8 * ccmp_decrypt(const u8 *tk, const struct ieee80211_hdr *hdr,
+ const u8 *data, size_t data_len, size_t *decrypted_len)
{
u8 aad[30], nonce[13];
size_t aad_len;
@@ -154,7 +152,7 @@
mlen = data_len - 8 - 8;
os_memset(aad, 0, sizeof(aad));
- ccmp_aad_nonce(padapter, hdr, data, aad, &aad_len, nonce);
+ ccmp_aad_nonce(hdr, data, aad, &aad_len, nonce);
wpa_hexdump(_MSG_EXCESSIVE_, "CCMP AAD", aad, aad_len);
wpa_hexdump(_MSG_EXCESSIVE_, "CCMP nonce", nonce, 13);
@@ -188,9 +186,8 @@
}
-u8 * ccmp_encrypt(_adapter *padapter, const u8 *tk, u8 *frame, size_t len, size_t hdrlen, u8 *qos,
- u8 *pn, int keyid, size_t *encrypted_len)
-
+u8 * ccmp_encrypt(const u8 *tk, u8 *frame, size_t len, size_t hdrlen, u8 *qos,
+ u8 *pn, int keyid, size_t *encrypted_len)
{
u8 aad[30], nonce[13];
size_t aad_len, plen;
@@ -228,7 +225,7 @@
}
os_memset(aad, 0, sizeof(aad));
- ccmp_aad_nonce(padapter, hdr, crypt + hdrlen, aad, &aad_len, nonce);
+ ccmp_aad_nonce(hdr, crypt + hdrlen, aad, &aad_len, nonce);
wpa_hexdump(_MSG_EXCESSIVE_, "CCMP AAD", aad, aad_len);
wpa_hexdump(_MSG_EXCESSIVE_, "CCMP nonce", nonce, 13);
@@ -288,9 +285,8 @@
}
-u8 * ccmp_256_decrypt(_adapter *padapter, const u8 *tk, const struct ieee80211_hdr *hdr,
- const u8 *data, size_t data_len, size_t *decrypted_len)
-
+u8 * ccmp_256_decrypt(const u8 *tk, const struct ieee80211_hdr *hdr,
+ const u8 *data, size_t data_len, size_t *decrypted_len)
{
u8 aad[30], nonce[13];
size_t aad_len;
@@ -307,7 +303,7 @@
mlen = data_len - 8 - 16;
os_memset(aad, 0, sizeof(aad));
- ccmp_aad_nonce(padapter, hdr, data, aad, &aad_len, nonce);
+ ccmp_aad_nonce(hdr, data, aad, &aad_len, nonce);
wpa_hexdump(_MSG_EXCESSIVE_, "CCMP-256 AAD", aad, aad_len);
wpa_hexdump(_MSG_EXCESSIVE_, "CCMP-256 nonce", nonce, 13);
@@ -330,9 +326,8 @@
}
-u8 * ccmp_256_encrypt(_adapter *padapter, const u8 *tk, u8 *frame, size_t len, size_t hdrlen,
- u8 *qos, u8 *pn, int keyid, size_t *encrypted_len)
-
+u8 * ccmp_256_encrypt(const u8 *tk, u8 *frame, size_t len, size_t hdrlen,
+ u8 *qos, u8 *pn, int keyid, size_t *encrypted_len)
{
u8 aad[30], nonce[13];
size_t aad_len, plen;
@@ -370,7 +365,7 @@
}
os_memset(aad, 0, sizeof(aad));
- ccmp_aad_nonce(padapter, hdr, crypt + hdrlen, aad, &aad_len, nonce);
+ ccmp_aad_nonce(hdr, crypt + hdrlen, aad, &aad_len, nonce);
wpa_hexdump(_MSG_EXCESSIVE_, "CCMP-256 AAD", aad, aad_len);
wpa_hexdump(_MSG_EXCESSIVE_, "CCMP-256 nonce", nonce, 13);
--
Gitblit v1.6.2