'\" te .\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved. .TH net_isvalidchecksum 9F "1 May 2008" "SunOS 5.11" "Kernel Functions for Drivers" .SH NAME net_isvalidchecksum \- verify layer 3 and layer 4 checksums .SH SYNOPSIS .LP .nf #include \fBint\fR \fBnet_isvalidchecksum\fR(\fBconst\fR \fBnet_data_t\fR \fInet\fR, \fBmblk_t\fR *\fImb\fR); .fi .SH INTERFACE LEVEL .sp .LP Solaris DDI specific (Solaris DDI). .SH PARAMETERS .sp .ne 2 .mk .na \fB\fInet\fR\fR .ad .RS 7n .rt value returned from a successful call to \fBnet_protocol_lookup\fR(9F). .RE .sp .ne 2 .mk .na \fB\fImb\fR\fR .ad .RS 6n .rt the \fBmblk\fR structure holding a packet that is the subject of this query. .RE .SH DESCRIPTION .sp .LP The \fBnet_isvalidchecksum()\fR 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. .sp .LP For both \fBIPv4\fR and \fBIPv6\fR, \fBTCP\fR, \fBUDP\fR and \fBICMP\fR (including \fBICMPV6\fR for \fBIPv6\fR) layer 4 checksums are currently validated. .SH RETURN VALUES .sp .LP The \fBnet_isvalidchecksum()\fR function returns: .sp .ne 2 .mk .na \fB-1\fR .ad .RS 6n .rt The network protocol does not support this function. .RE .sp .ne 2 .mk .na \fB0\fR .ad .RS 6n .rt The packet does not contain partial checksums. .RE .sp .ne 2 .mk .na \fB1\fR .ad .RS 6n .rt The packet does contain partial checksums. .RE .SH CONTEXT .sp .LP The \fBnet_isvalidchecksum()\fR function may be called from user, kernel, or interrupt context. .SH ATTRIBUTES .sp .LP See \fBattributes\fR(5) for descriptions of the following attributes: .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . ATTRIBUTE TYPEATTRIBUTE VALUE _ Availabilitysystem/core-os _ Interface StabilityCommitted .TE .SH SEE ALSO .sp .LP \fBnet_ispartialchecksum\fR(9F), \fBnet_protocol_lookup\fR(9F), \fBattributes\fR(5)