Squashfs: Replace zero-length array with flexible-array

There is a regular need in the kernel to provide a way to declare having a
dynamically sized set of trailing elements in a structure. Kernel code should
always use “flexible array members”[1] for these cases. The older style of
one-element or zero-length arrays should no longer be used[2].

[1] https://en.wikipedia.org/wiki/Flexible_array_member
[2] https://github.com/KSPP/linux/issues/21

Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
This commit is contained in:
Gustavo A. R. Silva 2020-05-28 09:35:11 -05:00
parent ceaf7191b9
commit b2b32e3aa0

View File

@ -262,7 +262,7 @@ struct squashfs_dir_index {
__le32 index;
__le32 start_block;
__le32 size;
unsigned char name[0];
unsigned char name[];
};
struct squashfs_base_inode {
@ -327,7 +327,7 @@ struct squashfs_symlink_inode {
__le32 inode_number;
__le32 nlink;
__le32 symlink_size;
char symlink[0];
char symlink[];
};
struct squashfs_reg_inode {
@ -341,7 +341,7 @@ struct squashfs_reg_inode {
__le32 fragment;
__le32 offset;
__le32 file_size;
__le16 block_list[0];
__le16 block_list[];
};
struct squashfs_lreg_inode {
@ -358,7 +358,7 @@ struct squashfs_lreg_inode {
__le32 fragment;
__le32 offset;
__le32 xattr;
__le16 block_list[0];
__le16 block_list[];
};
struct squashfs_dir_inode {
@ -389,7 +389,7 @@ struct squashfs_ldir_inode {
__le16 i_count;
__le16 offset;
__le32 xattr;
struct squashfs_dir_index index[0];
struct squashfs_dir_index index[];
};
union squashfs_inode {
@ -410,7 +410,7 @@ struct squashfs_dir_entry {
__le16 inode_number;
__le16 type;
__le16 size;
char name[0];
char name[];
};
struct squashfs_dir_header {
@ -428,12 +428,12 @@ struct squashfs_fragment_entry {
struct squashfs_xattr_entry {
__le16 type;
__le16 size;
char data[0];
char data[];
};
struct squashfs_xattr_val {
__le32 vsize;
char value[0];
char value[];
};
struct squashfs_xattr_id {