Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

net: spider_net: 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: 3f1071ec39f7 ("net: spider_net: Use struct_size() helper")
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Geoff Levand <geoff@infradead.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Gustavo A. R. Silva and committed by
David S. Miller
02014090 2506a917

+1 -1
+1 -1
drivers/net/ethernet/toshiba/spider_net.c
··· 2332 2332 struct spider_net_card *card; 2333 2333 2334 2334 netdev = alloc_etherdev(struct_size(card, darray, 2335 - tx_descriptors + rx_descriptors)); 2335 + size_add(tx_descriptors, rx_descriptors))); 2336 2336 if (!netdev) 2337 2337 return NULL; 2338 2338