summaryrefslogtreecommitdiff
path: root/datapath-windows/ovsext/Conntrack.h
diff options
context:
space:
mode:
Diffstat (limited to 'datapath-windows/ovsext/Conntrack.h')
-rw-r--r--datapath-windows/ovsext/Conntrack.h34
1 files changed, 5 insertions, 29 deletions
diff --git a/datapath-windows/ovsext/Conntrack.h b/datapath-windows/ovsext/Conntrack.h
index bbbf49c11..b68a54f30 100644
--- a/datapath-windows/ovsext/Conntrack.h
+++ b/datapath-windows/ovsext/Conntrack.h
@@ -167,33 +167,8 @@ OvsConntrackUpdateExpiration(OVS_CT_ENTRY *ctEntry,
ctEntry->expiration = now + interval;
}
-static const TCPHdr*
-OvsGetTcpHeader(PNET_BUFFER_LIST nbl,
- OVS_PACKET_HDR_INFO *layers,
- VOID *storage,
- UINT32 *tcpPayloadLen)
-{
- IPHdr *ipHdr;
- TCPHdr *tcp;
- VOID *dest = storage;
-
- ipHdr = NdisGetDataBuffer(NET_BUFFER_LIST_FIRST_NB(nbl),
- layers->l4Offset + sizeof(TCPHdr),
- NULL, 1 /*no align*/, 0);
- if (ipHdr == NULL) {
- return NULL;
- }
-
- ipHdr = (IPHdr *)((PCHAR)ipHdr + layers->l3Offset);
- tcp = (TCPHdr *)((PCHAR)ipHdr + ipHdr->ihl * 4);
- if (tcp->doff * 4 >= sizeof *tcp) {
- NdisMoveMemory(dest, tcp, sizeof(TCPHdr));
- *tcpPayloadLen = TCP_DATA_LENGTH(ipHdr, tcp);
- return storage;
- }
-
- return NULL;
-}
+const TCPHdr* OvsGetTcpHeader(PNET_BUFFER_LIST nbl, OVS_PACKET_HDR_INFO *layers,
+ VOID *storage, UINT32 *tcpPayloadLen);
VOID OvsCleanupConntrack(VOID);
NTSTATUS OvsInitConntrack(POVS_SWITCH_CONTEXT context);
@@ -203,6 +178,7 @@ NDIS_STATUS OvsExecuteConntrackAction(OvsForwardingContext *fwdCtx,
const PNL_ATTR a);
BOOLEAN OvsConntrackValidateTcpPacket(const TCPHdr *tcp);
BOOLEAN OvsConntrackValidateIcmpPacket(const ICMPHdr *icmp);
+BOOLEAN OvsConntrackValidateIcmp6Packet(const ICMPHdr *icmp);
OVS_CT_ENTRY * OvsConntrackCreateTcpEntry(const TCPHdr *tcp,
UINT64 now,
UINT32 tcpPayloadLen);
@@ -235,8 +211,8 @@ NTSTATUS OvsInitCtRelated(POVS_SWITCH_CONTEXT context);
VOID OvsCleanupCtRelated(VOID);
NDIS_STATUS OvsCtRelatedEntryCreate(UINT8 ipProto,
UINT16 dl_type,
- UINT32 serverIp,
- UINT32 clientIp,
+ struct ct_addr serverIp,
+ struct ct_addr clientIp,
UINT16 serverPort,
UINT16 clientPort,
UINT64 currentTime,