Skip to content

Commit

Permalink
uapi: revert flexible-array conversions
Browse files Browse the repository at this point in the history
These structures can get embedded in other structures in user-space
and cause all sorts of warnings and problems. So, we better don't take
any chances and keep the zero-length arrays in place for now.

Signed-off-by: Gustavo A. R. Silva <[email protected]>
  • Loading branch information
GustavoARSilva committed May 4, 2020
1 parent 0e698df commit 1e6e9d0
Show file tree
Hide file tree
Showing 8 changed files with 12 additions and 12 deletions.
2 changes: 1 addition & 1 deletion include/uapi/linux/bpf.h
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ struct bpf_insn {
/* Key of an a BPF_MAP_TYPE_LPM_TRIE entry */
struct bpf_lpm_trie_key {
__u32 prefixlen; /* up to 32 for AF_INET, 128 for AF_INET6 */
__u8 data[]; /* Arbitrary size */
__u8 data[0]; /* Arbitrary size */
};

struct bpf_cgroup_storage_key {
Expand Down
4 changes: 2 additions & 2 deletions include/uapi/linux/dlm_device.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,13 +45,13 @@ struct dlm_lock_params {
void __user *bastaddr;
struct dlm_lksb __user *lksb;
char lvb[DLM_USER_LVB_LEN];
char name[];
char name[0];
};

struct dlm_lspace_params {
__u32 flags;
__u32 minor;
char name[];
char name[0];
};

struct dlm_purge_params {
Expand Down
2 changes: 1 addition & 1 deletion include/uapi/linux/fiemap.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ struct fiemap {
__u32 fm_mapped_extents;/* number of extents that were mapped (out) */
__u32 fm_extent_count; /* size of fm_extents array (in) */
__u32 fm_reserved;
struct fiemap_extent fm_extents[]; /* array of mapped extents (out) */
struct fiemap_extent fm_extents[0]; /* array of mapped extents (out) */
};

#define FIEMAP_MAX_OFFSET (~0ULL)
Expand Down
6 changes: 3 additions & 3 deletions include/uapi/linux/if_arcnet.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ struct arc_rfc1201 {
__u8 proto; /* protocol ID field - varies */
__u8 split_flag; /* for use with split packets */
__be16 sequence; /* sequence number */
__u8 payload[]; /* space remaining in packet (504 bytes)*/
__u8 payload[0]; /* space remaining in packet (504 bytes)*/
};
#define RFC1201_HDR_SIZE 4

Expand All @@ -69,7 +69,7 @@ struct arc_rfc1201 {
*/
struct arc_rfc1051 {
__u8 proto; /* ARC_P_RFC1051_ARP/RFC1051_IP */
__u8 payload[]; /* 507 bytes */
__u8 payload[0]; /* 507 bytes */
};
#define RFC1051_HDR_SIZE 1

Expand All @@ -80,7 +80,7 @@ struct arc_rfc1051 {
struct arc_eth_encap {
__u8 proto; /* Always ARC_P_ETHER */
struct ethhdr eth; /* standard ethernet header (yuck!) */
__u8 payload[]; /* 493 bytes */
__u8 payload[0]; /* 493 bytes */
};
#define ETH_ENCAP_HDR_SIZE 14

Expand Down
2 changes: 1 addition & 1 deletion include/uapi/linux/mmc/ioctl.h
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ struct mmc_ioc_cmd {
*/
struct mmc_ioc_multi_cmd {
__u64 num_of_cmds;
struct mmc_ioc_cmd cmds[];
struct mmc_ioc_cmd cmds[0];
};

#define MMC_IOC_CMD _IOWR(MMC_BLOCK_MAJOR, 0, struct mmc_ioc_cmd)
Expand Down
4 changes: 2 additions & 2 deletions include/uapi/linux/net_dropmon.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,12 @@ struct net_dm_config_entry {

struct net_dm_config_msg {
__u32 entries;
struct net_dm_config_entry options[];
struct net_dm_config_entry options[0];
};

struct net_dm_alert_msg {
__u32 entries;
struct net_dm_drop_point points[];
struct net_dm_drop_point points[0];
};

struct net_dm_user_msg {
Expand Down
2 changes: 1 addition & 1 deletion include/uapi/linux/netfilter_bridge/ebt_among.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ struct ebt_mac_wormhash_tuple {
struct ebt_mac_wormhash {
int table[257];
int poolsize;
struct ebt_mac_wormhash_tuple pool[];
struct ebt_mac_wormhash_tuple pool[0];
};

#define ebt_mac_wormhash_size(x) ((x) ? sizeof(struct ebt_mac_wormhash) \
Expand Down
2 changes: 1 addition & 1 deletion include/uapi/scsi/scsi_bsg_fc.h
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ struct fc_bsg_host_vendor {
__u64 vendor_id;

/* start of vendor command area */
__u32 vendor_cmd[];
__u32 vendor_cmd[0];
};

/* Response:
Expand Down

0 comments on commit 1e6e9d0

Please sign in to comment.