]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
tcp: fix incorrect parameter validation in the do_tcp_getsockopt() function
authorGavrilov Ilia <Ilia.Gavrilov@infotecs.ru>
Thu, 7 Mar 2024 14:23:49 +0000 (14:23 +0000)
committerSasha Levin <sashal@kernel.org>
Tue, 26 Mar 2024 22:19:40 +0000 (18:19 -0400)
commit0709f6fa131b445bc919e865200e15b913f4a113
tree891b3099a02fc6611a089bf371497a62b7221b7c
parentb64a1b4f4760f1a85607cfec2fcb6492a6863d79
tcp: fix incorrect parameter validation in the do_tcp_getsockopt() function

[ Upstream commit 716edc9706deb3bb2ff56e2eeb83559cea8f22db ]

The 'len' variable can't be negative when assigned the result of
'min_t' because all 'min_t' parameters are cast to unsigned int,
and then the minimum one is chosen.

To fix the logic, check 'len' as read from 'optlen',
where the types of relevant variables are (signed) int.

Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Signed-off-by: Gavrilov Ilia <Ilia.Gavrilov@infotecs.ru>
Reviewed-by: Jason Xing <kerneljasonxing@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/ipv4/tcp.c