summaryrefslogtreecommitdiff
path: root/include/uapi/linux/wimax/git@git.tavy.me:linux.git
diff options
context:
space:
mode:
authorLukas Johannes Möller <research@johannes-moeller.dev>2026-03-10 21:49:01 +0000
committerFlorian Westphal <fw@strlen.de>2026-03-13 15:31:14 +0100
commitfbce58e719a17aa215c724473fd5baaa4a8dc57c (patch)
tree1af7b9ef58c64b66f30e26b8c7b97bc05af72e27 /include/uapi/linux/wimax/git@git.tavy.me:linux.git
parentf900e1d77ee0ef87bfb5ab3fe60f0b3d8ad5ba05 (diff)
netfilter: nf_conntrack_sip: fix Content-Length u32 truncation in sip_help_tcp()
sip_help_tcp() parses the SIP Content-Length header with simple_strtoul(), which returns unsigned long, but stores the result in unsigned int clen. On 64-bit systems, values exceeding UINT_MAX are silently truncated before computing the SIP message boundary. For example, Content-Length 4294967328 (2^32 + 32) is truncated to 32, causing the parser to miscalculate where the current message ends. The loop then treats trailing data in the TCP segment as a second SIP message and processes it through the SDP parser. Fix this by changing clen to unsigned long to match the return type of simple_strtoul(), and reject Content-Length values that exceed the remaining TCP payload length. Fixes: f5b321bd37fb ("netfilter: nf_conntrack_sip: add TCP support") Signed-off-by: Lukas Johannes Möller <research@johannes-moeller.dev> Signed-off-by: Florian Westphal <fw@strlen.de>
Diffstat (limited to 'include/uapi/linux/wimax/git@git.tavy.me:linux.git')
0 files changed, 0 insertions, 0 deletions