IP checksum implementation in OpenBSD ip_output: fill header fields where required foremost locally generated packets ip_output calls pf_test() right after pf_test(), the ip cksum is recalculated unconditionally to cover the decreased ttl possibly covering changes done by pf locally generated packets do not even have a cksum before