The checksum flags listed in the mbuf(9) man page do not match the ones in mbuf.h. In addition, the m_pkthdr.csum variable name should be m_pkthdr.csum_flags.
The following diff fixes both issues. OK? Lawrence Index: mbuf.9 =================================================================== RCS file: /cvs/src/share/man/man9/mbuf.9,v retrieving revision 1.59 diff -u -p -r1.59 mbuf.9 --- mbuf.9 3 Jan 2013 07:53:22 -0000 1.59 +++ mbuf.9 21 Mar 2013 02:27:31 -0000 @@ -302,15 +302,15 @@ buffer holding the data (size MHLEN). .El .Pp The -.Fa m_pkthdr.csum +.Fa m_pkthdr.csum_flags variable can take the following values: .Pp .Bl -tag -compact -offset indent -width XXXXXXXXXXXXXXXXXX .It Dv M_IPV4_CSUM_OUT IPv4 checksum needed. -.It Dv M_TCPV4_CSUM_OUT +.It Dv M_TCP_CSUM_OUT TCP checksum needed. -.It Dv M_UDPV4_CSUM_OUT +.It Dv M_UDP_CSUM_OUT UDP checksum needed. .It Dv M_IPV4_CSUM_IN_OK IPv4 checksum verified. @@ -324,6 +324,12 @@ TCP/IPv4 checksum bad. UDP/IPv4 checksum verified. .It Dv M_UDP_CSUM_IN_BAD UDP/IPv4 checksum bad. +.It Dv M_ICMP_CSUM_OUT +ICMP checksum needed. +.It Dv M_ICMP_CSUM_IN_OK +ICMP checksum verified. +.It Dv M_ICMP_CSUM_IN_BAD +ICMP checksum bad. .El .Pp When only M_EXT flag is set, an external storage buffer is being used to
