Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 6 Dec 2001 12:34:54 -0800
From:      Bill Fenner <fenner@research.att.com>
To:        tinguely@web.cs.ndsu.nodak.edu
Cc:        freebsd@hoolan.org, tlambert2@mindspring.com, freebsd-hackers@freebsd.org
Subject:   Re: UDP checksum error after encapsulating multicast packet
Message-ID:  <200112062034.MAA01807@windsor.research.att.com>

next in thread | raw e-mail | index | archive | help

This is a bug in delayed checksum.  The checksum in the encapsulated
packet is the pseudo-header checksum:

mango% ipcksum
0011 0018 c009 c87f e002 0304
correct checksum of the 12 bytes is 9446 1's complement is 6bb9

(6bb9 is the udp checksum in the encapsulated packet).  ip_output()
has to do the udp checksum if it's going to hand it to ip_mforward();
this is particularly problematic if the outgoing interface is actually
going to perform the checksum.  It is probably necessary to create a
copy of the IP/UDP headers and perform the delayed checksum before
handing off to ip_mforward().

  Bill

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200112062034.MAA01807>