CVE-2026-31478 PUBLISHED

ksmbd: replace hardcoded hdr2_len with offsetof() in smb2_calc_max_out_buf_len()

Assigner: Linux
Reserved: 09.03.2026 Published: 22.04.2026 Updated: 22.04.2026

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

ksmbd: replace hardcoded hdr2_len with offsetof() in smb2_calc_max_out_buf_len()

After this commit (e2b76ab8b5c9 "ksmbd: add support for read compound"), response buffer management was changed to use dynamic iov array. In the new design, smb2_calc_max_out_buf_len() expects the second argument (hdr2_len) to be the offset of ->Buffer field in the response structure, not a hardcoded magic number. Fix the remaining call sites to use the correct offsetof() value.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from f2283680a80571ca82d710bc6ecd8f8beac67d63 to 70b4c414889492c522b6e4331562360f49be2361 (excl.)
  • affected from 9f297df20d93411c0b4ddad7f88ba04a7cd36e77 to 9a7166f0ef8cbb7bb48dd05e2471d995566003f5 (excl.)
  • affected from e2b76ab8b5c9327ab2dae6da05d0752eb2f4771d to c3a89e3ec1ccf64fa6a34e391e1581ebbcba8683 (excl.)
  • affected from e2b76ab8b5c9327ab2dae6da05d0752eb2f4771d to 6aef1765d6807e0f027cd87f6ac973eb0879a46d (excl.)
  • affected from e2b76ab8b5c9327ab2dae6da05d0752eb2f4771d to 80824c7e527b70cf9039534e60aff592e8f209d1 (excl.)
  • affected from e2b76ab8b5c9327ab2dae6da05d0752eb2f4771d to 4cb537ae4f37d7d0f617815ed4bed7173fb50861 (excl.)
  • affected from e2b76ab8b5c9327ab2dae6da05d0752eb2f4771d to 0e55f63dd08f09651d39e1b709a91705a8a0ddcb (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 6.6 is affected
  • unaffected from 0 to 6.6 (excl.)
  • unaffected from 5.15.203 to 5.15.* (incl.)
  • unaffected from 6.1.168 to 6.1.* (incl.)
  • unaffected from 6.6.131 to 6.6.* (incl.)
  • unaffected from 6.12.80 to 6.12.* (incl.)
  • unaffected from 6.18.21 to 6.18.* (incl.)
  • unaffected from 6.19.11 to 6.19.* (incl.)
  • unaffected from 7.0 to * (incl.)

References