Actions
Bug #1057
closedmaster-2013-12-02: zero length structs aren't allowed in C
Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
-
Affected Versions:
Effort:
Difficulty:
Label:
Description
sigh...
--- util-mpm-b2gc.h.orig 2013-12-04 16:20:42.506210720 +1100
+++ util-mpm-b2gc.h 2013-12-04 16:20:44.650633645 +1100
@@ -143,6 +143,8 @@
uint32_t stat_loop_no_match;
uint32_t stat_num_shift;
uint32_t stat_total_shift;
+#else
+ uint32_t dummy;
#endif /* B2GC_COUNTERS */
} B2gcThreadCtx;
--- ../../suricata-master.orig/src/decode-icmpv4.h 2013-12-01 21:37:52.000000000 +1100
+++ decode-icmpv4.h 2013-12-03 15:07:14.661696076 +1100
@@ -281,6 +281,7 @@
ICMPV4_GET_TYPE((p)) == ICMP_PARAMETERPROB)
typedef struct ICMPV4Cache_ {
+ int dummy;
} ICMPV4Cache;
void DecodeICMPV4RegisterTests(void);
--- ../../suricata-master.orig/src/decode-udp.h 2013-12-01 21:37:52.000000000 +1100
+++ decode-udp.h 2013-12-03 11:55:39.756816544 +1100
@@ -46,6 +46,7 @@
typedef struct UDPVars_
{
+ int dummy;
} UDPVars;
#define CLEAR_UDP_PACKET(p) do { \
--- ../../suricata-master.orig/src/source-pcap.h 2013-12-01 21:37:52.000000000 +1100
+++ source-pcap.h 2013-12-03 11:55:21.803988067 +1100
@@ -39,6 +39,7 @@
/* per packet Pcap vars */
typedef struct PcapPacketVars_
{
+ int dummy;
} PcapPacketVars;
/** needs to be able to contain Windows adapter id's, so
--- ../../suricata-master.orig/src/util-mpm-b2gc.h 2013-12-01 21:37:52.000000000 +1100
+++ util-mpm-b2gc.h 2013-12-04 16:20:44.650633645 +1100
@@ -143,6 +143,8 @@
uint32_t stat_loop_no_match;
uint32_t stat_num_shift;
uint32_t stat_total_shift;
+#else
+ uint32_t dummy;
#endif /* B2GC_COUNTERS */
} B2gcThreadCtx;
Updated by Mark Solaris about 12 years ago
Background:
http://stackoverflow.com/questions/755305/empty-structure-in-c
tl;dr: Empty structs aren't allowed in C. Causes compiler to error.
Updated by Mark Solaris about 12 years ago
Another
--- ../../suricata-master.orig/src/util-mpm-b2g.h 2013-12-01 21:37:52.000000000 +1100
+++ util-mpm-b2g.h 2013-12-04 16:57:49.872759285 +1100
@@ -112,6 +112,8 @@
uint32_t stat_loop_no_match;
uint32_t stat_num_shift;
uint32_t stat_total_shift;
+#else
+ uint32_t dummy;
#endif /* B2G_COUNTERS */
} B2gThreadCtx;
Updated by Mark Solaris about 12 years ago
--- ../../suricata-master.orig/src/util-mpm-b2gm.h 2013-12-01 21:37:52.000000000 +1100
+++ util-mpm-b2gm.h 2013-12-04 16:59:24.524498641 +1100
@@ -134,6 +134,8 @@
uint32_t stat_test_buf;
uint32_t stat_test_buf_ok;
uint32_t stat_test_buf_fail;
+#else
+ uint32_t dummy;
#endif /* B2GM_COUNTERS */
} B2gmThreadCtx;
Updated by Mark Solaris about 12 years ago
--- ../../suricata-master.orig/src/util-mpm-b3g.h 2013-12-01 21:37:52.000000000 +1100
+++ util-mpm-b3g.h 2013-12-04 17:01:25.099252973 +1100
@@ -115,6 +115,8 @@
uint32_t stat_loop_no_match;
uint32_t stat_num_shift;
uint32_t stat_total_shift;
+#else
+ uint32_t dummy;
#endif /* B3G_COUNTERS */
} B3gThreadCtx;
Updated by Mark Solaris about 12 years ago
--- ../../suricata-master.orig/src/util-mpm-wumanber.h 2013-12-01 21:37:52.000000000 +1100
+++ util-mpm-wumanber.h 2013-12-04 17:02:42.272809084 +1100
@@ -83,6 +83,8 @@
uint32_t stat_loop_no_match;
uint32_t stat_num_shift;
uint32_t stat_total_shift;
+#else
+ uint32_t dummy;
#endif /* WUMANBER_COUNTERS */
} WmThreadCtx;
Actions