[PATCH -next 4/4] integrity: Use DECLARE_FLEX_ARRAY() helper in integrity.h

From: Gaosheng Cui
Date: Mon Sep 05 2022 - 03:58:59 EST


Zero-length arrays are deprecated and we are moving towards adopting
C99 flexible-array members instead. So, replace zero-length array
declarations with the new DECLARE_FLEX_ARRAY() helper macro in
integrity.h.

As follows:
struct evm_ima_xattr_data,
struct ima_digest_data,
struct signature_v2_hdr,

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

Link: KSPP#21
Link: KSPP#193
Link: KSPP#197
Link: https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
Signed-off-by: Gaosheng Cui <cuigaosheng1@xxxxxxxxxx>
---
security/integrity/integrity.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/security/integrity/integrity.h b/security/integrity/integrity.h
index 7167a6e99bdc..3eeea8d630e0 100644
--- a/security/integrity/integrity.h
+++ b/security/integrity/integrity.h
@@ -85,7 +85,7 @@ enum evm_ima_xattr_type {

struct evm_ima_xattr_data {
u8 type;
- u8 data[];
+ DECLARE_FLEX_ARRAY(u8, data);
} __packed;

/* Only used in the EVM HMAC code. */
@@ -110,7 +110,7 @@ struct ima_digest_data {
} ng;
u8 data[2];
} xattr;
- u8 digest[];
+ DECLARE_FLEX_ARRAY(u8, digest);
} __packed;

/*
@@ -138,7 +138,7 @@ struct signature_v2_hdr {
uint8_t hash_algo; /* Digest algorithm [enum hash_algo] */
__be32 keyid; /* IMA key identifier - not X509/PGP specific */
__be16 sig_size; /* signature size */
- uint8_t sig[]; /* signature payload */
+ DECLARE_FLEX_ARRAY(uint8_t, sig); /* signature payload */
} __packed;

/*
--
2.25.1