carl9170: Replace zero-length array with DECLARE_FLEX_ARRAY() helper
authorGustavo A. R. Silva <gustavoars@kernel.org>
Mon, 26 Sep 2022 21:44:57 +0000 (16:44 -0500)
committerKalle Valo <quic_kvalo@quicinc.com>
Fri, 30 Sep 2022 06:31:32 +0000 (09:31 +0300)
Zero-length arrays are deprecated and we are moving towards adopting
C99 flexible-array members, instead. So, replace zero-length arrays
declarations in anonymous union with the new DECLARE_FLEX_ARRAY()
helper macro.

This helper allows for flexible-array members in unions.

Link: https://github.com/KSPP/linux/issues/193
Link: https://github.com/KSPP/linux/issues/215
Link: https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/YzIdWc8QSdZFHBYg@work
drivers/net/wireless/ath/carl9170/wlan.h

index 0a4e42e..ded2c6d 100644 (file)
@@ -271,7 +271,7 @@ struct ar9170_tx_frame {
 
        union {
                struct ieee80211_hdr i3e;
-               u8 payload[0];
+               DECLARE_FLEX_ARRAY(u8, payload);
        } data;
 } __packed;