NET_ISVALIDCHECKSUM(9F)                         Kernel Functions for Drivers
NAME
       net_isvalidchecksum - verify layer 3 and layer 4  checksums
SYNOPSIS
       #include <sys/neti.h>       
int net_isvalidchecksum(
const net_data_t net, 
mblk_t *
mb);
INTERFACE LEVEL
       illumos DDI specific (illumos DDI).
PARAMETERS
       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.
DESCRIPTION
       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.
RETURN VALUES
       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.
CONTEXT
       The 
net_isvalidchecksum() function may be called from user,  kernel,
       or interrupt context.
ATTRIBUTES
       See 
attributes(7) for descriptions of the following attributes:
       +--------------------+-----------------+
       |  ATTRIBUTE TYPE    | ATTRIBUTE VALUE |
       +--------------------+-----------------+
       |Interface Stability | Committed       |
       +--------------------+-----------------+
SEE ALSO
       attributes(7), 
net_ispartialchecksum(9F), 
net_protocol_lookup(9F)                                 May 1, 2008         NET_ISVALIDCHECKSUM(9F)