On Fri, Nov 18, 2022 at 01:11:47PM -0800, Kees Cook wrote: > Zero-length arrays are deprecated[1] and are being replaced with > flexible array members in support of the ongoing efforts to tighten the > FORTIFY_SOURCE routines on memcpy(), correctly instrument array indexing > with UBSAN_BOUNDS, and to globally enable -fstrict-flex-arrays=3. > > Replace zero-length array with flexible-array member. > > This results in no differences in binary output. > > [1] https://github.com/KSPP/linux/issues/78 > > Cc: Christian Lamparter <chunkeey@xxxxxxxxxxxxxx> > Cc: Kalle Valo <kvalo@xxxxxxxxxx> > Cc: "David S. Miller" <davem@xxxxxxxxxxxxx> > Cc: Eric Dumazet <edumazet@xxxxxxxxxx> > Cc: Jakub Kicinski <kuba@xxxxxxxxxx> > Cc: Paolo Abeni <pabeni@xxxxxxxxxx> > Cc: "Gustavo A. R. Silva" <gustavoars@xxxxxxxxxx> > Cc: linux-wireless@xxxxxxxxxxxxxxx > Cc: netdev@xxxxxxxxxxxxxxx > Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx> Another sneaky one. :p Reviewed-by: Gustavo A. R. Silva <gustavoars@xxxxxxxxxx> Thanks! -- Gustavo > --- > drivers/net/wireless/ath/carl9170/fwcmd.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/wireless/ath/carl9170/fwcmd.h b/drivers/net/wireless/ath/carl9170/fwcmd.h > index 4a500095555c..ff4b3b50250c 100644 > --- a/drivers/net/wireless/ath/carl9170/fwcmd.h > +++ b/drivers/net/wireless/ath/carl9170/fwcmd.h > @@ -118,10 +118,10 @@ struct carl9170_reg_list { > } __packed; > > struct carl9170_write_reg { > - struct { > + DECLARE_FLEX_ARRAY(struct { > __le32 addr; > __le32 val; > - } regs[0] __packed; > + } __packed, regs); > } __packed; > > struct carl9170_write_reg_byte { > -- > 2.34.1 >