summaryrefslogtreecommitdiff
path: root/datapath-windows/ovsext/User.c
diff options
context:
space:
mode:
authorEitan Eliahu <eliahue@vmware.com>2014-10-16 17:53:27 -0700
committerBen Pfaff <blp@nicira.com>2014-10-16 15:35:16 -0700
commit0d2cb7087c8d058466bb1f6af2426a27fdd388c3 (patch)
tree064e1555c68df4018e0bddee2921105d297754e7 /datapath-windows/ovsext/User.c
parent086fa8739ae1c600076dd43f09be083ce9ddfd6e (diff)
downloadopenvswitch-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.c11
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 ?