Subject: tcpdump reports invalid checksums when using ex(4) hardware checksums
To: None <tech-net@netbsd.org>
From: Rui Paulo <phlox-netbsd-net@fnop.net>
List: tech-net
Date: 10/04/2004 23:14:29
Greetings,

When I enable ex(4) hardware checksums, tcpdump (and all programs that
use bpfilter) will report bad checksums:
23:07:59.772771 10.0.0.2 > 10.0.0.1: icmp: echo request seq 0 (ttl
255, id 51117, len 84, bad cksum 0 (->ffff0721)!)
                       ^^^^^^^^^
23:07:59.773806 10.0.0.1 > 10.0.0.2: icmp: echo reply seq 0 (ttl 255,
id 15820, len 84)

I wonder, is this normal ? It should be normal if the hardware
checksum routines performs checksum calculation after the layer
bpfilter works on. But I just wanted to make sure. 

BTW, is this ex(4) specific or every driver that performs hardware
checksums has this minor problem ?

Thanks in advance.

-- 
Rui Paulo                          "Simplicity is the ultimate sophistication."
                                      -- Leonardo da Vinci