Date: Thu, 23 Dec 1999 12:56:12 -0600 (CST) From: Jonathan Lemon <jlemon@monster.americantv.com> To: FreeBSD-gnats-submit@freebsd.org Subject: kern/15656: in_cksum computes wrong checksum Message-ID: <199912231856.MAA66401@monster.americantv.com>
index | next in thread | raw e-mail
>Number: 15656
>Category: kern
>Synopsis: in_cksum computes wrong checksum
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Thu Dec 23 11:00:01 PST 1999
>Closed-Date:
>Last-Modified:
>Originator: Jonathan Lemon
>Release: FreeBSD 4.0-CURRENT i386
>Organization:
>Environment:
4.0-CURRENT, circa Dec 14, 1999
>Description:
For some data patterns, in_cksum generates a checksum of 0.
The specification says a checksum of 0 should be transmitted
as all ones (65535), and a transmitted checksum of 0 indicates
that the sender did not compute a checksum.
While 0 == 65535 in 1's complement arithmetic, this is still wrong.
The error was discovered while doing incremental checksum
computations on the TCP stream on an intermediate machine.
>How-To-Repeat:
tcpdump 'tcp[16:2] == 0', (dump TCP packets with a zero checksum)
and transmit various TCP data streams.
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199912231856.MAA66401>
