usb: atm: Use size_add() in call to struct_size()
authorGustavo A. R. Silva <gustavoars@kernel.org>
Fri, 15 Sep 2023 19:20:14 +0000 (13:20 -0600)
committerKees Cook <keescook@chromium.org>
Mon, 2 Oct 2023 16:48:51 +0000 (09:48 -0700)
commitb7fa76e03b0d83a035b20e0ef1a3d65a4557f76c
treea1671d3ea8fb3255305a1415bf80c82259ed3034
parent8fddc4b660273f96f2d216b04642b070a59c019c
usb: atm: Use size_add() in call to struct_size()

If, for any reason, the open-coded arithmetic causes a wraparound,
the protection that `struct_size()` adds against potential integer
overflows is defeated. Fix this by hardening call to `struct_size()`
with `size_add()`.

Fixes: b626871a7cda ("usb: atm: Use struct_size() helper")
Signed-off-by: "Gustavo A. R. Silva" <gustavoars@kernel.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/ZQSuboEIhvATAdxN@work
Signed-off-by: Kees Cook <keescook@chromium.org>
drivers/usb/atm/usbatm.c