net_isvalidchecksum - verify layer 3 and layer 4 checksums
#include <sys/neti.h>
int net_isvalidchecksum(const net_data_t net, mblk_t *mb);
illumos DDI specific (illumos DDI).
net
mb
the mblk structure holding a packet that is the
subject of this query.
The net_isvalidchecksum() function verifies the layer 3 checksum (and, in
some case, the layer 4 checksum) in the packet. If possible, fields that are
used by hardware checksum'ing are examined rather than manually verifying that
the checksums are present for packets received from a network interface.
For both IPv4 and IPv6, TCP, UDP and
ICMP (including ICMPV6 for IPv6) layer 4 checksums are
currently validated.
The net_isvalidchecksum() function returns:
-1
The network protocol does not support this
function.
0
The packet does not contain partial checksums.
1
The packet does contain partial checksums.
The net_isvalidchecksum() function may be called from user, kernel, or
interrupt context.
See attributes(7) for descriptions of the following attributes:
ATTRIBUTE
TYPE |
ATTRIBUTE VALUE |
Interface Stability |
Committed |