From 1e130c0596fe0bf55d2a9731cae85af4a6417986 Mon Sep 17 00:00:00 2001 From: Patrick Yavitz Date: Fri, 5 Dec 2025 16:31:44 -0500 Subject: [PATCH] Fixup rtl8852bs sha256 Signed-off-by: Patrick Yavitz --- .../net/wireless/realtek/rtl8852bs/core/crypto/sha256-prf.c | 4 ++++ drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256.c | 4 ++++ drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256.h | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256-prf.c b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256-prf.c index 642b38ff618c..df92ab3c27e8 100644 --- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256-prf.c +++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256-prf.c @@ -28,12 +28,14 @@ * This function is used to derive new, cryptographically separate keys from a * given key. */ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 8, 0)) int sha256_prf(const u8 *key, size_t key_len, const char *label, const u8 *data, size_t data_len, u8 *buf, size_t buf_len) { return sha256_prf_bits(key, key_len, label, data, data_len, buf, buf_len * 8); } +#endif /** @@ -52,6 +54,7 @@ int sha256_prf(const u8 *key, size_t key_len, const char *label, * significant 1-7 bits of the last octet in the output are not part of the * requested output. */ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 8, 0)) int sha256_prf_bits(const u8 *key, size_t key_len, const char *label, const u8 *data, size_t data_len, u8 *buf, size_t buf_len_bits) @@ -107,3 +110,4 @@ int sha256_prf_bits(const u8 *key, size_t key_len, const char *label, return 0; } +#endif \ No newline at end of file diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256.c b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256.c index ea5d9e3f2dd6..5f1c1441f2a4 100644 --- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256.c +++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256.c @@ -23,6 +23,7 @@ * @mac: Buffer for the hash (32 bytes) * Returns: 0 on success, -1 on failure */ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 8, 0)) int hmac_sha256_vector(const u8 *key, size_t key_len, size_t num_elem, const u8 *addr[], const size_t *len, u8 *mac) { @@ -86,6 +87,7 @@ int hmac_sha256_vector(const u8 *key, size_t key_len, size_t num_elem, _len[1] = SHA256_MAC_LEN; return sha256_vector(2, _addr, _len, mac); } +#endif /** @@ -97,8 +99,10 @@ int hmac_sha256_vector(const u8 *key, size_t key_len, size_t num_elem, * @mac: Buffer for the hash (32 bytes) * Returns: 0 on success, -1 on failure */ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 8, 0)) int hmac_sha256(const u8 *key, size_t key_len, const u8 *data, size_t data_len, u8 *mac) { return hmac_sha256_vector(key, key_len, 1, &data, &data_len, mac); } +#endif diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256.h b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256.h index 5219022edd7d..a086c8b4739d 100644 --- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256.h +++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/sha256.h @@ -11,10 +11,14 @@ #define SHA256_MAC_LEN 32 +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 8, 0)) int hmac_sha256_vector(const u8 *key, size_t key_len, size_t num_elem, const u8 *addr[], const size_t *len, u8 *mac); +#endif +#if (LINUX_VERSION_CODE < KERNEL_VERSION(6, 18, 0)) int hmac_sha256(const u8 *key, size_t key_len, const u8 *data, size_t data_len, u8 *mac); +#endif int sha256_prf(const u8 *key, size_t key_len, const char *label, const u8 *data, size_t data_len, u8 *buf, size_t buf_len); int sha256_prf_bits(const u8 *key, size_t key_len, const char *label, -- 2.47.3