summaryrefslogtreecommitdiff
path: root/datapath-windows
diff options
context:
space:
mode:
authorAlin Serdean <aserdean@cloudbasesolutions.com>2017-11-06 17:33:37 +0200
committerAlin Gabriel Serdean <aserdean@ovn.org>2017-11-29 16:51:15 +0200
commit263e428e152d56eba2d04e6429dfcb8477146f9c (patch)
tree6b62a5aae2c6359ac83f4a0951507f267ebac9aa /datapath-windows
parentc249e3e4817695e7b0f85644fa67b7f72667e988 (diff)
downloadopenvswitch-263e428e152d56eba2d04e6429dfcb8477146f9c.tar.gz
datapath-windows: Fix static analysis warnings in OvsGetTcpPayloadLength
This fixes the static code analysis over the function 'OvsGetTcpPayloadLength'. Signed-off-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com> Acked-by: Shashank Ram <shashank08@gmail.com>
Diffstat (limited to 'datapath-windows')
-rw-r--r--datapath-windows/ovsext/Conntrack.h17
1 files changed, 7 insertions, 10 deletions
diff --git a/datapath-windows/ovsext/Conntrack.h b/datapath-windows/ovsext/Conntrack.h
index be5f34dc5..ef1fe21c2 100644
--- a/datapath-windows/ovsext/Conntrack.h
+++ b/datapath-windows/ovsext/Conntrack.h
@@ -157,20 +157,17 @@ static __inline UINT32
OvsGetTcpPayloadLength(PNET_BUFFER_LIST nbl)
{
IPHdr *ipHdr;
- char *ipBuf[sizeof(IPHdr)];
- PNET_BUFFER curNb;
- curNb = NET_BUFFER_LIST_FIRST_NB(nbl);
- UINT32 hdrLen = sizeof(EthHdr);
- NdisAdvanceNetBufferDataStart(curNb, hdrLen, FALSE, NULL);
- ipHdr = NdisGetDataBuffer(curNb, sizeof *ipHdr, (PVOID) &ipBuf,
- 1 /*no align*/, 0);
+ TCPHdr *tcp;
+ char *ipBuf[sizeof(EthHdr) + sizeof(IPHdr) + sizeof(TCPHdr)];
+
+ ipHdr = NdisGetDataBuffer(NET_BUFFER_LIST_FIRST_NB(nbl), sizeof *ipBuf,
+ (PVOID)&ipBuf, 1 /*no align*/, 0);
if (ipHdr == NULL) {
- NdisRetreatNetBufferDataStart(curNb, hdrLen, 0, NULL);
return 0;
}
- TCPHdr *tcp = (TCPHdr *)((PCHAR)ipHdr + ipHdr->ihl * 4);
- NdisRetreatNetBufferDataStart(curNb, hdrLen, 0, NULL);
+ ipHdr = (IPHdr *)((PCHAR)ipHdr + sizeof(EthHdr));
+ tcp = (TCPHdr *)((PCHAR)ipHdr + ipHdr->ihl * 4);
return (ntohs(ipHdr->tot_len) - (ipHdr->ihl * 4) - (TCP_HDR_LEN(tcp)));
}