can: etas_es58x: Replace zero-length array with DECLARE_FLEX_ARRAY() helper
authorGustavo A. R. Silva <gustavoars@kernel.org>
Mon, 29 Aug 2022 21:50:59 +0000 (16:50 -0500)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Tue, 6 Sep 2022 06:28:26 +0000 (08:28 +0200)
Zero-length arrays are deprecated and we are moving towards adopting
C99 flexible-array members, instead. So, replace zero-length array
declaration in union es58x_urb_cmd with the new DECLARE_FLEX_ARRAY()
helper macro.

This helper allows for a flexible-array member in a union.

Link: https://github.com/KSPP/linux/issues/193
Link: https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Acked-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Reviewed-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/all/Yw00w6XRcq7B6ub6@work
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/usb/etas_es58x/es58x_core.h

index d769bdf..640fe0a 100644 (file)
@@ -222,7 +222,7 @@ union es58x_urb_cmd {
                u8 cmd_type;
                u8 cmd_id;
        } __packed;
-       u8 raw_cmd[0];
+       DECLARE_FLEX_ARRAY(u8, raw_cmd);
 };
 
 /**