Mon Apr 25 22:05:05 2011 UTC ()
fix assertions


(yamt)
diff -r1.27 -r1.28 src/sys/netinet6/in6_cksum.c

cvs diff -r1.27 -r1.28 src/sys/netinet6/in6_cksum.c (expand / switch to context diff)
--- src/sys/netinet6/in6_cksum.c 2008/03/10 22:34:40 1.27
+++ src/sys/netinet6/in6_cksum.c 2011/04/25 22:05:05 1.28
@@ -1,4 +1,4 @@
-/*	$NetBSD: in6_cksum.c,v 1.27 2008/03/10 22:34:40 yamt Exp $	*/
+/*	$NetBSD: in6_cksum.c,v 1.28 2011/04/25 22:05:05 yamt Exp $	*/
 
 /*-
  * Copyright (c) 2008 Joerg Sonnenberger <joerg@NetBSD.org>.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: in6_cksum.c,v 1.27 2008/03/10 22:34:40 yamt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: in6_cksum.c,v 1.28 2011/04/25 22:05:05 yamt Exp $");
 
 #include <sys/param.h>
 #include <sys/mbuf.h>
@@ -60,13 +60,13 @@
 	const uint16_t *w;
 	const char *cp;
 
+	if (nxt == 0)
+		return cpu_in_cksum(m, len, off, 0);
+
 	if (__predict_false(off < sizeof(struct ip6_hdr)))
 		panic("in6_cksum: offset too short for IPv6 header");
 	if (__predict_false(m->m_len < sizeof(struct ip6_hdr)))
 		panic("in6_cksum: mbuf too short for IPv6 header");
-
-	if (nxt == 0)
-		return cpu_in_cksum(m, len, off, 0);
 
 	/*
 	 * Compute the equivalent of: