sst-linux/net/bridge
GONG, Ruiqi 28b07e30bc netfilter: ebtables: fix fortify warnings in size_entry_mwt()
[ Upstream commit a7ed3465daa240bdf01a5420f64336fee879c09d ]

When compiling with gcc 13 and CONFIG_FORTIFY_SOURCE=y, the following
warning appears:

In function ‘fortify_memcpy_chk’,
    inlined from ‘size_entry_mwt’ at net/bridge/netfilter/ebtables.c:2118:2:
./include/linux/fortify-string.h:592:25: error: call to ‘__read_overflow2_field’
declared with attribute warning: detected read beyond size of field (2nd parameter);
maybe use struct_group()? [-Werror=attribute-warning]
  592 |                         __read_overflow2_field(q_size_field, size);
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The compiler is complaining:

memcpy(&offsets[1], &entry->watchers_offset,
                       sizeof(offsets) - sizeof(offsets[0]));

where memcpy reads beyong &entry->watchers_offset to copy
{watchers,target,next}_offset altogether into offsets[]. Silence the
warning by wrapping these three up via struct_group().

Signed-off-by: GONG, Ruiqi <gongruiqi1@huawei.com>
Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-09-23 11:11:03 +02:00
..
netfilter netfilter: ebtables: fix fortify warnings in size_entry_mwt() 2023-09-23 11:11:03 +02:00
br_arp_nd_proxy.c
br_cfm_netlink.c
br_cfm.c
br_device.c
br_fdb.c
br_forward.c net: add vlan_get_protocol_and_depth() helper 2023-05-24 17:32:32 +01:00
br_if.c net: bridge: keep ports without IFF_UNICAST_FLT in BR_PROMISC mode 2023-07-19 16:22:04 +02:00
br_input.c
br_ioctl.c
br_mdb.c
br_mrp_netlink.c
br_mrp_switchdev.c
br_mrp.c
br_mst.c
br_multicast_eht.c
br_multicast.c
br_netfilter_hooks.c netfilter: br_netfilter: fix recent physdev match breakage 2023-04-26 14:28:32 +02:00
br_netfilter_ipv6.c netfilter: br_netfilter: Drop dst references before setting. 2022-08-31 12:12:32 +02:00
br_netlink_tunnel.c
br_netlink.c bridge: Fix flushing of dynamic FDB entries 2022-11-02 20:47:09 -07:00
br_nf_core.c
br_private_cfm.h
br_private_mcast_eht.h
br_private_mrp.h
br_private_stp.h
br_private_tunnel.h bridge: always declare tunnel functions 2023-05-24 17:32:48 +01:00
br_private.h
br_stp_bpdu.c
br_stp_if.c Revert "bridge: Add extack warning when enabling STP in netns." 2023-09-13 09:42:20 +02:00
br_stp_timer.c
br_stp.c
br_switchdev.c net: bridge: switchdev: don't notify FDB entries with "master dynamic" 2023-04-26 14:28:35 +02:00
br_sysfs_br.c bridge: Fix flushing of dynamic FDB entries 2022-11-02 20:47:09 -07:00
br_sysfs_if.c
br_vlan_options.c
br_vlan_tunnel.c
br_vlan.c bridge: switchdev: Fix memory leaks when changing VLAN protocol 2022-11-15 13:38:11 +01:00
br.c
Kconfig
Makefile