From ef1ebd3f33243e5585aa914208b94d0049fa2a7c Mon Sep 17 00:00:00 2001 From: Alin Gabriel Serdean Date: Thu, 20 Sep 2018 01:37:06 +0300 Subject: datapath-windows: Fix payload length calculation in Conntrack.h The payload calculation in OvsGetTcpHeader is wrong: `ntohs(ipHdr->tot_len) - expr` instead of `ntohs((ipHdr->tot_len) - expr)`. We already have a macro for that calculation defined in NetProto.h so use it. Signed-off-by: Alin Gabriel Serdean Acked-by: Anand Kumar --- datapath-windows/ovsext/Conntrack.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'datapath-windows') diff --git a/datapath-windows/ovsext/Conntrack.h b/datapath-windows/ovsext/Conntrack.h index 4678ed028..c3d317fa1 100644 --- a/datapath-windows/ovsext/Conntrack.h +++ b/datapath-windows/ovsext/Conntrack.h @@ -187,8 +187,7 @@ OvsGetTcpHeader(PNET_BUFFER_LIST nbl, tcp = (TCPHdr *)((PCHAR)ipHdr + ipHdr->ihl * 4); if (tcp->doff * 4 >= sizeof *tcp) { NdisMoveMemory(dest, tcp, sizeof(TCPHdr)); - *tcpPayloadLen = ntohs((ipHdr->tot_len) - (ipHdr->ihl * 4) - - (TCP_HDR_LEN(tcp))); + *tcpPayloadLen = TCP_DATA_LENGTH(ipHdr, tcp); return storage; } -- cgit v1.2.1