Instead of using OvsConntrack*, it might be better to use OvsCt*. But, not a big deal.
Acked-by: Nithin Raju <nit...@vmware.com> -----Original Message----- From: dev <dev-boun...@openvswitch.org> on behalf of Sairam Venugopal <vsai...@vmware.com> Date: Thursday, April 14, 2016 at 12:07 PM To: "dev@openvswitch.org" <dev@openvswitch.org> Subject: [ovs-dev] [PATCH] datapath-windows: Refactor Conntrack Module in Hyper-V >Minor refactors around naming and reusability in lieu of adding support >for other >protocols for tracking connections. > >Signed-off-by: Sairam Venugopal <vsai...@vmware.com> >--- > datapath-windows/ovsext/Conntrack-tcp.c | 15 ++++----------- > datapath-windows/ovsext/Conntrack.c | 2 +- > datapath-windows/ovsext/Conntrack.h | 13 +++++++++---- > 3 files changed, 14 insertions(+), 16 deletions(-) > >diff --git a/datapath-windows/ovsext/Conntrack-tcp.c >b/datapath-windows/ovsext/Conntrack-tcp.c >index 3e25ba5..ebf0c95 100644 >--- a/datapath-windows/ovsext/Conntrack-tcp.c >+++ b/datapath-windows/ovsext/Conntrack-tcp.c >@@ -58,13 +58,6 @@ enum { > TCPOPT_WINDOW = 3, > }; > >-/* Given POINTER, the address of the given MEMBER in a STRUCT object, >returns >- the STRUCT object. */ >-#define CONTAINER_OF(POINTER, STRUCT, MEMBER) \ >- ((STRUCT *) (void *) ((char *) (POINTER) - \ >- offsetof (STRUCT, MEMBER))) >- >- > /* TCP sequence numbers are 32 bit integers operated > * on with modular arithmetic. These macros can be > * used to compare such integers. */ >@@ -227,7 +220,7 @@ OvsCastConntrackEntryToTcpEntry(OVS_CT_ENTRY* conn) > } > > enum CT_UPDATE_RES >-OvsConntrackUpdateTcpEntry(struct OVS_CT_ENTRY* conn_, >+OvsConntrackUpdateTcpEntry(OVS_CT_ENTRY* conn_, > const TCPHdr *tcp, > PNET_BUFFER_LIST nbl, > BOOLEAN reply, >@@ -488,9 +481,9 @@ OvsConntrackValidateTcpPacket(const TCPHdr *tcp) > } > > OVS_CT_ENTRY * >-OvsNewTcpConntrack(const TCPHdr *tcp, >- PNET_BUFFER_LIST nbl, >- UINT64 now) >+OvsConntrackCreateTcpEntry(const TCPHdr *tcp, >+ PNET_BUFFER_LIST nbl, >+ UINT64 now) > { > struct conn_tcp* newconn = NULL; > struct tcp_peer *src, *dst; >diff --git a/datapath-windows/ovsext/Conntrack.c >b/datapath-windows/ovsext/Conntrack.c >index fbeb70c..6391ce8 100644 >--- a/datapath-windows/ovsext/Conntrack.c >+++ b/datapath-windows/ovsext/Conntrack.c >@@ -164,7 +164,7 @@ OvsCtEntryCreate(const TCPHdr *tcp, > > state |= OVS_CS_F_NEW; > if (commit) { >- entry = OvsNewTcpConntrack(tcp, curNbl, currentTime); >+ entry = OvsConntrackCreateTcpEntry(tcp, curNbl, currentTime); > NdisMoveMemory(&entry->key, &ctx->key, sizeof (OVS_CT_KEY)); > NdisMoveMemory(&entry->rev_key, &ctx->key, sizeof (OVS_CT_KEY)); > OvsCtKeyReverse(&entry->rev_key); >diff --git a/datapath-windows/ovsext/Conntrack.h >b/datapath-windows/ovsext/Conntrack.h >index 3a73f21..a754544 100644 >--- a/datapath-windows/ovsext/Conntrack.h >+++ b/datapath-windows/ovsext/Conntrack.h >@@ -82,6 +82,11 @@ typedef struct OvsConntrackKeyLookupCtx { > #define CT_HASH_TABLE_MASK (CT_HASH_TABLE_SIZE - 1) > #define CT_ENTRY_TIMEOUT (2 * 600000000) // 2m > #define CT_CLEANUP_INTERVAL (2 * 600000000) // 2m >+/* Given POINTER, the address of the given MEMBER in a STRUCT object, >returns >+ the STRUCT object. */ >+#define CONTAINER_OF(POINTER, STRUCT, MEMBER) \ >+ ((STRUCT *) (void *) ((char *) (POINTER) - \ >+ offsetof (STRUCT, MEMBER))) > > VOID OvsCleanupConntrack(VOID); > NTSTATUS OvsInitConntrack(POVS_SWITCH_CONTEXT context); >@@ -91,10 +96,10 @@ NDIS_STATUS >OvsExecuteConntrackAction(PNET_BUFFER_LIST curNbl, > OvsFlowKey *key, > const PNL_ATTR a); > BOOLEAN OvsConntrackValidateTcpPacket(const TCPHdr *tcp); >-OVS_CT_ENTRY * OvsNewTcpConntrack(const TCPHdr *tcp, >- PNET_BUFFER_LIST nbl, >- UINT64 now); >-enum CT_UPDATE_RES OvsConntrackUpdateTcpEntry(struct OVS_CT_ENTRY* conn_, >+OVS_CT_ENTRY * OvsConntrackCreateTcpEntry(const TCPHdr *tcp, >+ PNET_BUFFER_LIST nbl, >+ UINT64 now); >+enum CT_UPDATE_RES OvsConntrackUpdateTcpEntry(OVS_CT_ENTRY* conn_, > const TCPHdr *tcp, > PNET_BUFFER_LIST nbl, > BOOLEAN reply, >-- >2.5.0.windows.1 > >_______________________________________________ >dev mailing list >dev@openvswitch.org >https://urldefense.proofpoint.com/v2/url?u=http-3A__openvswitch.org_mailma >n_listinfo_dev&d=BQIGaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=pN >HQcdr7B40b4h6Yb7FIedI1dnBsxdDuTLBYD3JqV80&m=-zOnnsO80AcPvXgh7DvLOMjISVZeJx >SHkQSi2Ixa-pA&s=_LI4eQyeAnprxieks1K6DjEJY2sZA4v_YSr-PE8EOKM&e= _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev