[PATCH v2 3/6][next] ath6kl: wmi: Replace one-element array with flexible-array member in struct wmi_channel_list_reply
From: Gustavo A. R. Silva
Date: Thu Feb 24 2022 - 16:08:56 EST
Replace one-element array with flexible-array member in struct
wmi_channel_list_reply.
This issue was found with the help of Coccinelle and audited and fixed,
manually.
Link: https://www.kernel.org/doc/html/v5.16/process/deprecated.html#zero-length-and-one-element-arrays
Link: https://github.com/KSPP/linux/issues/79
Reviewed-by: Jeff Johnson <quic_jjohnson@xxxxxxxxxxx>
Signed-off-by: Gustavo A. R. Silva <gustavoars@xxxxxxxxxx>
---
Changes in v2:
- Revert changes in if-statement logic:
if (len < sizeof(struct wmi_channel_list_reply))
Link: https://lore.kernel.org/linux-hardening/3abb0846-a26f-3d76-8936-cd23cf4387f1@xxxxxxxxxxx/
- Update changelog text.
- Add Reviewed-by: Jeff Johnson <quic_jjohnson@xxxxxxxxxxx> tag.
drivers/net/wireless/ath/ath6kl/wmi.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/wireless/ath/ath6kl/wmi.h b/drivers/net/wireless/ath/ath6kl/wmi.h
index 9e168752bec2..432e4f428a4a 100644
--- a/drivers/net/wireless/ath/ath6kl/wmi.h
+++ b/drivers/net/wireless/ath/ath6kl/wmi.h
@@ -1373,7 +1373,7 @@ struct wmi_channel_list_reply {
u8 num_ch;
/* channel in Mhz */
- __le16 ch_list[1];
+ __le16 ch_list[];
} __packed;
/* List of Events (target to host) */
--
2.27.0