man pages section 9: DDI and DKI Kernel Functions

Exit Print View

Updated: July 2014
 
 

net_isvalidchecksum(9F)

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

Solaris DDI specific (Solaris 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(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Availability
system/core-os
Interface Stability
Committed

See Also

net_ispartialchecksum(9F), net_protocol_lookup(9F), attributes(5)