]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
wifi: mac80211: correct EHT EIRP TPE parsing
authorJohannes Berg <johannes.berg@intel.com>
Wed, 12 Jun 2024 08:05:33 +0000 (10:05 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 12 Jun 2024 10:25:54 +0000 (12:25 +0200)
For the EHT EIRP transmit power envelope, the 320 MHz is in
the last octet, but if we've copied 4 octets (count == 3),
the next one is at index 4 not 5 (count + 2). Fix this, and
just hardcode the offset since count is always 3 here.

Fixes: 39dc8b8ea387 ("wifi: mac80211: pass parsed TPE data to drivers")
Reviewed-by: Miriam Rachel Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://msgid.link/20240612100533.f96c1e0fb758.I2f301c4341abb44dafd29128e7e32c66dc0e296d@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/parse.c

index 28aae14db8a9883c31dc11635c0f9e5dc54546bb..279c5143b3356dcc03011f25d1de276d7876b766 100644 (file)
@@ -235,7 +235,7 @@ static void ieee80211_parse_tpe(struct ieee80211_parsed_tpe *tpe,
                *cnt_out = count + 1;
                /* separately take 320 MHz if present */
                if (count == 3 && len > sizeof(*env) + count + 1) {
-                       out[4] = env->variable[count + 2];
+                       out[4] = env->variable[4];
                        *cnt_out = 5;
                }
                break;