Fix formatting

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Re-work checksum code slightly to match reference code

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Add some more assertions concerning checksums and large packets.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Two small refinements:

- Add fragment flag to packet info and have the parser set it.
  ASSERT on this in the transmit patch if the stack tries to offload
  checksum for a fragment.
- Add registry values to allow actual IPv4 or IPv6 TSO to be disabled at
  the backend.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Use split RX/TX event channels if the backend supports them.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Merge pull request #12 from pauldu/split-event-channels

Latest updates

Approved-By: Ben Chalmers <ben.chalmers@citrix.com>
Remove checksum verification code. It's become fairly useless now.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
XOP-440 checksum corner cases.

Windows seems to take RFC 2460 a bit too far and replace zero TCP checksum
values with 0xFFFF. Thus we need to treat IPv6 TCP packets with an embedded
checksum of 0xFFFF as actually containing checksum 0.
I've also added code to allow IPv4 UDP packets with a checksum value of 0 to
be accepted, as this is the 'no checksum' option that only exists for IPv4
UDP. For IPv6 UDP we again translate 0xFFFF to 0 but insist on the checksum
matching after this translation.

When we calculate checksum for IPv6 UDP packets, I've also made sure we
insert 0xFFFF rather than 0 before passing the packet up the stack.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>