[ovs-dev] [PATCH] datapath-windows: Zero initialize Conntrack-ICMP entry
Sairam Venugopal
vsairam at vmware.com
Thu Jun 15 21:07:43 UTC 2017
Set conntrack-icmp entry to {0}. Add some compile time asserts to ensure
that conn_* struct's first member is OVS_CT_ENTRY.
Signed-off-by: Sairam Venugopal <vsairam at vmware.com>
---
datapath-windows/ovsext/Conntrack-icmp.c | 3 ++-
datapath-windows/ovsext/Conntrack-other.c | 1 +
datapath-windows/ovsext/Conntrack-tcp.c | 1 +
3 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/datapath-windows/ovsext/Conntrack-icmp.c b/datapath-windows/ovsext/Conntrack-icmp.c
index b1b6043..4da0665 100644
--- a/datapath-windows/ovsext/Conntrack-icmp.c
+++ b/datapath-windows/ovsext/Conntrack-icmp.c
@@ -27,6 +27,7 @@ struct conn_icmp {
struct OVS_CT_ENTRY up;
enum icmp_state state;
};
+C_ASSERT(offsetof(struct conn_icmp, up) == 0);
static const enum ct_timeout icmp_timeouts[] = {
[ICMPS_FIRST] = 60 * CT_INTERVAL_SEC,
@@ -78,7 +79,7 @@ OvsConntrackCreateIcmpEntry(UINT64 now)
if (!conn) {
return NULL;
}
-
+ conn->up = (OVS_CT_ENTRY) {0};
conn->state = ICMPS_FIRST;
OvsConntrackUpdateExpiration(&conn->up, now,
diff --git a/datapath-windows/ovsext/Conntrack-other.c b/datapath-windows/ovsext/Conntrack-other.c
index 6c68ba8..962cc8a 100644
--- a/datapath-windows/ovsext/Conntrack-other.c
+++ b/datapath-windows/ovsext/Conntrack-other.c
@@ -27,6 +27,7 @@ struct conn_other {
struct OVS_CT_ENTRY up;
enum other_state state;
};
+C_ASSERT(offsetof(struct conn_other, up) == 0);
static const long long other_timeouts[] = {
[OTHERS_FIRST] = 60 * CT_INTERVAL_SEC,
diff --git a/datapath-windows/ovsext/Conntrack-tcp.c b/datapath-windows/ovsext/Conntrack-tcp.c
index f533b93..f8e85a2 100644
--- a/datapath-windows/ovsext/Conntrack-tcp.c
+++ b/datapath-windows/ovsext/Conntrack-tcp.c
@@ -51,6 +51,7 @@ struct conn_tcp {
struct OVS_CT_ENTRY up;
struct tcp_peer peer[2];
};
+C_ASSERT(offsetof(struct conn_tcp, up) == 0);
enum {
TCPOPT_EOL,
--
2.9.0.windows.1
More information about the dev
mailing list