diff options
author | Eitan Eliahu <eliahue@vmware.com> | 2014-10-16 17:53:27 -0700 |
---|---|---|
committer | Ben Pfaff <blp@nicira.com> | 2014-10-16 15:35:16 -0700 |
commit | 0d2cb7087c8d058466bb1f6af2426a27fdd388c3 (patch) | |
tree | 064e1555c68df4018e0bddee2921105d297754e7 /datapath-windows/ovsext/User.c | |
parent | 086fa8739ae1c600076dd43f09be083ce9ddfd6e (diff) | |
download | openvswitch-0d2cb7087c8d058466bb1f6af2426a27fdd388c3.tar.gz |
datapath-windows: Add packet miss read Netlink command.
The change include the Packet Read handler.
The current implementation reads once packet at a time. This should be updated
once user mode code is in place.
Signed-off-by: Eitan Eliahu <eliahue@vmware.com>
Co-authored-by: Nithin Raju <nithin@vmware.com>
Signed-off-by: Nithin Raju <nithin@vmware.com>
Signed-off-by: Ben Pfaff <blp@nicira.com>
Diffstat (limited to 'datapath-windows/ovsext/User.c')
-rw-r--r-- | datapath-windows/ovsext/User.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/datapath-windows/ovsext/User.c b/datapath-windows/ovsext/User.c index f24c4e3f1..a8128bca2 100644 --- a/datapath-windows/ovsext/User.c +++ b/datapath-windows/ovsext/User.c @@ -226,13 +226,12 @@ OvsReadDpIoctl(PFILE_OBJECT fileObject, if ((elem->hdrInfo.tcpCsumNeeded || elem->hdrInfo.udpCsumNeeded) && len == elem->packet.totalLen) { UINT16 sum, *ptr; - UINT16 size = (UINT16)(elem->packet.userDataLen + - elem->hdrInfo.l4Offset + - (UINT16)sizeof (OVS_PACKET_INFO)); - RtlCopyMemory(outputBuffer, &elem->packet, size); - ASSERT(len - size >= elem->hdrInfo.l4PayLoad); + UINT16 size = (UINT16)(elem->packet.payload - elem->packet.data + + elem->hdrInfo.l4Offset); + RtlCopyMemory(outputBuffer, &elem->packet.data, size); + ASSERT(len - size >= elem->hdrInfo.l4PayLoad); sum = CopyAndCalculateChecksum((UINT8 *)outputBuffer + size, - (UINT8 *)&elem->packet + size, + (UINT8 *)&elem->packet.data + size, elem->hdrInfo.l4PayLoad, 0); ptr =(UINT16 *)((UINT8 *)outputBuffer + size + (elem->hdrInfo.tcpCsumNeeded ? |