// checksumtypes.h
typedef struct _NET_PACKET_CHECKSUM {
UINT8 Layer2 : 2;
UINT8 Layer3 : 2;
UINT8 Layer4 : 2;
UINT8 Reserved : 2;
} NET_PACKET_CHECKSUM;
View the official Windows Driver Kit DDI referenceNo description available.
A NET_PACKET_CHECKSUM structure describes checksum information for a NET_PACKET.
Layer2A bit field that specifies a flag from either NET_PACKET_TX_CHECKSUM_ACTION or NET_PACKET_RX_CHECKSUM_EVALUATION. Targets the checksum field in the packet's layer 2 header.
Layer3A bit field that specifies a flag from either NET_PACKET_TX_CHECKSUM_ACTION or NET_PACKET_RX_CHECKSUM_EVALUATION. Targets the checksum field in the packet's layer 3 header.
Layer4A bit field that specifies a flag from either NET_PACKET_TX_CHECKSUM_ACTION or NET_PACKET_RX_CHECKSUM_EVALUATION. Targets the checksum field in the packet's layer 4 header.
ReservedReserved for system use.
Client drivers can obtain this structure for a packet by calling NetExtensionGetPacketChecksum.
For a transmit queue, the client specifies flag values from the NET_PACKET_TX_CHECKSUM_ACTION enumeration. In a transmit queue, the client cross-references the Checksum information for a packet with the Layout member of a NET_PACKET in order to determine which hardware transmit checksum offloads need to be enabled.
For a receive queue, the client specifies flag values from the NET_PACKET_RX_CHECKSUM_EVALUATION enumeration. The client should also fill out the Layout member of the NET_PACKET structure.
Packet descriptors and extensions