On Tue, Jul 27, 2021 at 01:57:58PM -0700, Kees Cook wrote: > In preparation for FORTIFY_SOURCE performing compile-time and run-time > field bounds checking for memcpy(), memmove(), and memset(), avoid > intentionally writing across neighboring fields. > > Use struct_group() around members addr1, addr2, and addr3 in struct > rtllib_hdr_4addr, and members qui, qui_type, qui_subtype, version, > and ac_info in struct rtllib_qos_information_element, so they can be > referenced together. This will allow memcpy() and sizeof() to more easily > reason about sizes, improve readability, and avoid future warnings about > writing beyond the end of addr1 and qui. > > "pahole" shows no size nor member offset changes to struct > rtllib_hdr_4addr nor struct rtllib_qos_information_element. "objdump -d" > shows no meaningful object code changes (i.e. only source line number > induced differences and optimizations). > > Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx> > --- > drivers/staging/rtl8192e/rtllib.h | 20 ++++++++++++-------- > drivers/staging/rtl8192e/rtllib_crypt_ccmp.c | 3 ++- > drivers/staging/rtl8192e/rtllib_rx.c | 8 ++++---- > 3 files changed, 18 insertions(+), 13 deletions(-) Acked-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>