CVE-2026-64089 PUBLISHED

batman-adv: tt: fix negative last_changeset_len

Assigner: Linux
Reserved: 19.07.2026 Published: 19.07.2026 Updated: 20.07.2026

In the Linux kernel, the following vulnerability has been resolved:

batman-adv: tt: fix negative last_changeset_len

batadv_piv_tt::last_changeset_len len was declared as s16, but the field is never intended to hold a negative value. When a value greater than 32767 is assigned, it wraps to a negative signed integer.

In batadv_send_my_tt_response(), last_changeset_len is temporarily widened to s32. The incorrectly negative s16 value propagates into the s32, causing batadv_tt_prepare_tvlv_local_data() to allocate a full sized buffer but populates only a small portion of it with the collected changeset. All remaining bits are kept uninitialized.

Using an u16 avoids this type confusion and ensures that no (negative) sign extension is performed in batadv_send_my_tt_response().

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS Score: 9.8

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from a73105b8d4c765d9ebfb664d0a66802127d8e4c7 to 6314089acf0ddf64376fdc0b1420695504c73f52 (excl.)
  • affected from a73105b8d4c765d9ebfb664d0a66802127d8e4c7 to 55dc41fe8821e9a849e147255ad572bc933a9d15 (excl.)
  • affected from a73105b8d4c765d9ebfb664d0a66802127d8e4c7 to c424e8519ac78eac5d9f4eecf06208a0d619ec14 (excl.)
  • affected from a73105b8d4c765d9ebfb664d0a66802127d8e4c7 to 22d59c72f4a47ffec121d0610f70d0d70c3c11c8 (excl.)
  • affected from a73105b8d4c765d9ebfb664d0a66802127d8e4c7 to eb235472b52ef36981c5aad330485eaf2382c53b (excl.)
  • affected from a73105b8d4c765d9ebfb664d0a66802127d8e4c7 to 179eb62506a02d00370bd6478898cb632e10986c (excl.)
  • affected from a73105b8d4c765d9ebfb664d0a66802127d8e4c7 to d29abf70c665730e249d2ec8e1402095ae26bcee (excl.)
  • affected from a73105b8d4c765d9ebfb664d0a66802127d8e4c7 to fc92cdfcb295cefa4344d71a527d61b638b7bfc4 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 3.1 is affected
  • unaffected from 0 to 3.1 (excl.)
  • unaffected from 5.10.258 to 5.10.* (incl.)
  • unaffected from 5.15.209 to 5.15.* (incl.)
  • unaffected from 6.1.175 to 6.1.* (incl.)
  • unaffected from 6.6.142 to 6.6.* (incl.)
  • unaffected from 6.12.92 to 6.12.* (incl.)
  • unaffected from 6.18.34 to 6.18.* (incl.)
  • unaffected from 7.0.11 to 7.0.* (incl.)
  • unaffected from 7.1 to * (incl.)

References