l2tp: fix incorrect parameter validation in the pppol2tp_getsockopt() function
authorGavrilov Ilia <Ilia.Gavrilov@infotecs.ru>
Thu, 7 Mar 2024 14:23:50 +0000 (14:23 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 11 Mar 2024 09:53:22 +0000 (09:53 +0000)
commit955e9876ba4ee26eeaab1b13517f5b2c88e73d55
treebb2049c1f15e689158a797cee432bb17d53617ab
parent5c3be3e0eb44b7f978bb6cbb20ad956adb93f736
l2tp: fix incorrect parameter validation in the pppol2tp_getsockopt() function

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: 3557baabf280 ("[L2TP]: PPP over L2TP driver core")
Reviewed-by: Tom Parkin <tparkin@katalix.com>
Signed-off-by: Gavrilov Ilia <Ilia.Gavrilov@infotecs.ru>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/l2tp/l2tp_ppp.c