diff options
author | Alin Serdean <aserdean@cloudbasesolutions.com> | 2016-11-28 14:11:57 +0000 |
---|---|---|
committer | Gurucharan Shetty <guru@ovn.org> | 2016-11-29 10:39:31 -0800 |
commit | 09995ba1240576ff028721d90432923588e585a0 (patch) | |
tree | 6b1b27adf6fed131d1b41a1f663835b44f5fe431 /datapath-windows/ovsext/Conntrack.c | |
parent | 34a2010c83a6fc0d02fd3ab138961a41e56c8718 (diff) | |
download | openvswitch-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.c | 4 |
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; } |