can: hi311x: hi3110_can_ist(): fix potential use-after-free
The commit a22bd630 ("can: hi311x: do not report txerr and rxerr during bus-off") removed the reporting of rxerr and txerr even in case of correct operation (i. e. not bus-off). The error count information added to the CAN frame after netif_rx() is a potential use after free, since there is no guarantee that the skb is in the same state. It might be freed or reused. Fix the issue by postponing the netif_rx() call in case of txerr and rxerr reporting. Fixes: a22bd630 ("can: hi311x: do not report txerr and rxerr during bus-off") Signed-off-by:Dario Binacchi <dario.binacchi@amarulasolutions.com> Link: https://patch.msgid.link/20241122221650.633981-5-dario.binacchi@amarulasolutions.com Signed-off-by:
Marc Kleine-Budde <mkl@pengutronix.de>
Loading
Please sign in to comment