]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
wifi: mac80211: remove misleading j_0 construction parts
authorJohannes Berg <johannes.berg@intel.com>
Mon, 21 Oct 2024 13:14:14 +0000 (15:14 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 23 Oct 2024 14:46:58 +0000 (16:46 +0200)
The GCM algorithm implementation in the kernel assumes that
a 12-byte IV is passed, not the actual J_0 from the GCM spec.
Don't rename, that'd be messy, but also don't fill the bytes
beyond the IV that aren't used, since otherwise it looks as
though j_0[12] is used uninitialized.

Link: https://patch.msgid.link/20241021151414.798ceb7a5896.Ic57751edad228d56865ecf7433fef469e5e0a4aa@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/wpa.c

index 293afa3f57c50378fe16cf7606d9e218fa8d5c72..40d5d9e484791623f0c794de5485e83ef0bd4967 100644 (file)
@@ -598,9 +598,6 @@ static void gcmp_special_blocks(struct sk_buff *skb, u8 *pn, u8 *j_0, u8 *aad,
 
        memcpy(j_0, hdr->addr2, ETH_ALEN);
        memcpy(&j_0[ETH_ALEN], pn, IEEE80211_GCMP_PN_LEN);
-       j_0[13] = 0;
-       j_0[14] = 0;
-       j_0[AES_BLOCK_SIZE - 1] = 0x01;
 
        ccmp_gcmp_aad(skb, aad, spp_amsdu);
 }