u8 data[0]; // packet data. The length of packet data is determined by the entry_size field of\r
// the wifi_ring_buffer_entry structure. It is expected that first bytes of the\r
// packet, or packet headers only (up to TCP or RTP/UDP headers) will be copied into the ring\r
-} wifi_ring_per_packet_status_entry __attribute__((packed));\r
+} __attribute__((packed)) wifi_ring_per_packet_status_entry;\r
\r
static char per_packet_status_ring_name[] = "wifi_per_packet_status"; // Ring buffer name for per-packet status ring\r
\r
u16 tag;\r
u16 length; // length of value\r
u8 value[0];\r
-} tlv_log __attribute__((packed));\r
+} __attribute__((packed)) tlv_log;\r
\r
typedef struct {\r
u16 event;\r
// parameter as transmit rate, num retries, num scan result found etc...\r
// as well, event_data can include a vendor proprietary part which is\r
// understood by the developer only.\r
-} wifi_ring_buffer_driver_connectivity_event __attribute__((packed));\r
+} __attribute__((packed)) wifi_ring_buffer_driver_connectivity_event;\r
\r
// Ring buffer name for connectivity events ring\r
static char connectivity_event_ring_name[] = "wifi_connectivity_events";\r
int status; // 0 taken, 1 released\r
int reason; // reason why this wake lock is taken\r
char name[0]; // null terminated\r
-} wake_lock_event __attribute__((packed));\r
+} __attribute__((packed)) wake_lock_event;\r
\r
typedef struct {\r
u16 event;\r
tlv_log tlvs[0];\r
-} wifi_power_event __attribute__((packed));\r
+} __attribute__((packed)) wifi_power_event;\r
\r
static char power_event_ring_name[] = "wifi_power_events";\r
\r
wifi_ring_per_packet_status_entry packet_status;\r
wifi_power_event power_event;\r
};\r
-} wifi_ring_buffer_entry __attribute__((packed));\r
+} __attribute__((packed)) wifi_ring_buffer_entry;\r
\r
#define WIFI_RING_BUFFER_FLAG_HAS_BINARY_ENTRIES 0x00000001 // set if binary entries are present\r
#define WIFI_RING_BUFFER_FLAG_HAS_ASCII_ENTRIES 0x00000002 // set if ascii entries are present\r