summaryrefslogtreecommitdiff
path: root/datapath-windows/ovsext/Conntrack.c
diff options
context:
space:
mode:
authorAlin Serdean <aserdean@cloudbasesolutions.com>2016-11-28 14:11:57 +0000
committerGurucharan Shetty <guru@ovn.org>2016-11-29 10:39:31 -0800
commit09995ba1240576ff028721d90432923588e585a0 (patch)
tree6b1b27adf6fed131d1b41a1f663835b44f5fe431 /datapath-windows/ovsext/Conntrack.c
parent34a2010c83a6fc0d02fd3ab138961a41e56c8718 (diff)
downloadopenvswitch-09995ba1240576ff028721d90432923588e585a0.tar.gz
datapath-windows: null comparison for icmp and tcp header
This patch checks if the TCP or ICMP header exists before trying to use them. The issue was found using the driver under low resources. Signed-off-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com> Acked-by: Sairam Venugopal <vsairam@vmware.com> Signed-off-by: Gurucharan Shetty <guru@ovn.org>
Diffstat (limited to 'datapath-windows/ovsext/Conntrack.c')
-rw-r--r--datapath-windows/ovsext/Conntrack.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/datapath-windows/ovsext/Conntrack.c b/datapath-windows/ovsext/Conntrack.c
index e663c3b1d..56a7cbc82 100644
--- a/datapath-windows/ovsext/Conntrack.c
+++ b/datapath-windows/ovsext/Conntrack.c
@@ -194,7 +194,7 @@ OvsCtEntryCreate(PNET_BUFFER_LIST curNbl,
TCPHdr tcpStorage;
const TCPHdr *tcp;
tcp = OvsGetTcp(curNbl, l4Offset, &tcpStorage);
- if (!OvsConntrackValidateTcpPacket(tcp)) {
+ if (!tcp || !OvsConntrackValidateTcpPacket(tcp)) {
goto invalid;
}
@@ -215,7 +215,7 @@ OvsCtEntryCreate(PNET_BUFFER_LIST curNbl,
ICMPHdr storage;
const ICMPHdr *icmp;
icmp = OvsGetIcmp(curNbl, l4Offset, &storage);
- if (!OvsConntrackValidateIcmpPacket(icmp)) {
+ if (!icmp || !OvsConntrackValidateIcmpPacket(icmp)) {
goto invalid;
}