[ovs-dev] [PATCH] datapath-windows: Conntrack move null checks to functions
Alin Serdean
aserdean at cloudbasesolutions.com
Thu Dec 8 18:44:50 UTC 2016
Add null checks inside OvsConntrackValidateIcmpPacket,
OvsConntrackValidateTcpPacket to make the functions self-contained.
Signed-off-by: Alin Gabriel Serdean <aserdean at cloudbasesolutions.com>
Suggested-by: Yin Lin <linyi at vmware.com>
---
datapath-windows/ovsext/Conntrack-icmp.c | 4 ++++
datapath-windows/ovsext/Conntrack-tcp.c | 6 +++++-
datapath-windows/ovsext/Conntrack.c | 4 ++--
3 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/datapath-windows/ovsext/Conntrack-icmp.c b/datapath-windows/ovsext/Conntrack-icmp.c
index 7db8e7d..b1b6043 100644
--- a/datapath-windows/ovsext/Conntrack-icmp.c
+++ b/datapath-windows/ovsext/Conntrack-icmp.c
@@ -59,6 +59,10 @@ OvsConntrackUpdateIcmpEntry(OVS_CT_ENTRY* conn_,
BOOLEAN
OvsConntrackValidateIcmpPacket(const ICMPHdr *icmp)
{
+ if (!icmp) {
+ return FALSE;
+ }
+
return icmp->type == ICMP4_ECHO_REQUEST
|| icmp->type == ICMP4_INFO_REQUEST
|| icmp->type == ICMP4_TIMESTAMP_REQUEST;
diff --git a/datapath-windows/ovsext/Conntrack-tcp.c b/datapath-windows/ovsext/Conntrack-tcp.c
index c7fcfa8..1c46bb0 100644
--- a/datapath-windows/ovsext/Conntrack-tcp.c
+++ b/datapath-windows/ovsext/Conntrack-tcp.c
@@ -457,9 +457,13 @@ OvsConntrackUpdateTcpEntry(OVS_CT_ENTRY* conn_,
BOOLEAN
OvsConntrackValidateTcpPacket(const TCPHdr *tcp)
{
+ if (!tcp) {
+ return FALSE;
+ }
+
UINT16 tcp_flags = ntohs(tcp->flags);
- if (tcp == NULL || OvsCtInvalidTcpFlags(tcp_flags)) {
+ if (OvsCtInvalidTcpFlags(tcp_flags)) {
return FALSE;
}
diff --git a/datapath-windows/ovsext/Conntrack.c b/datapath-windows/ovsext/Conntrack.c
index 84c4091..47dba9d 100644
--- a/datapath-windows/ovsext/Conntrack.c
+++ b/datapath-windows/ovsext/Conntrack.c
@@ -199,7 +199,7 @@ OvsCtEntryCreate(PNET_BUFFER_LIST curNbl,
TCPHdr tcpStorage;
const TCPHdr *tcp;
tcp = OvsGetTcp(curNbl, l4Offset, &tcpStorage);
- if (!tcp || !OvsConntrackValidateTcpPacket(tcp)) {
+ if (!OvsConntrackValidateTcpPacket(tcp)) {
goto invalid;
}
@@ -220,7 +220,7 @@ OvsCtEntryCreate(PNET_BUFFER_LIST curNbl,
ICMPHdr storage;
const ICMPHdr *icmp;
icmp = OvsGetIcmp(curNbl, l4Offset, &storage);
- if (!icmp || !OvsConntrackValidateIcmpPacket(icmp)) {
+ if (!OvsConntrackValidateIcmpPacket(icmp)) {
goto invalid;
}
--
2.10.2.windows.1
More information about the dev
mailing list