NET_ISPARTIALCHECKSUM(9F) Kernel Functions for Drivers NET_ISPARTIALCHECKSUM(9F)

net_ispartialchecksum - indicate if a packet is being scheduled for hardware checksum calculation

#include <sys/neti.h>
int net_ispartialchecksum(const net_data_t net, mblk_t *mb);

illumos DDI specific (illumos DDI).

net
value returned from a successful call to net_protocol_lookup(9F).

mb

the mblk structure holding a packet that is the subject of this query.

The net_ispartialchecksum() function looks at the fields within the mblk structure to determine if the packet contained inside contains headers with only partial checksum values. Partial checksum values are stored inside headers when the calculation of the complete checksum is being handled by the hardware.

The net_ispartialchecksum() function returns:

-1

The network protocol does not support this function.

0

The packet does not contain partial checksums.

If a packet is marked for hardware checksum'ing, the following values are returned:

NET_HCK_L3_FULL

Complete layer 3 checksum calculated

NET_HCK_L3_PART

Partial layer 3 checksum calculated

NET_HCK_L4_FULL

Complete layer 4 checksum calculated

NET_HCK_L4_PART

Partial layer 4 checksum calculated

The net_ispartialchecksum() function may be called from user, kernel, or interrupt context.

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE ATTRIBUTE VALUE
Interface Stability Committed

net_isvalidchecksum(9F), net_protocol_lookup(9F), attributes(5)
May 1, 2008 OmniOS