Ethereal-dev: Re: [Ethereal-dev] TCP Framentation bug?

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Guy Harris <guy@xxxxxxxxxx>
Date: Fri, 28 Feb 2003 10:28:10 -0800
On Fri, Feb 28, 2003 at 11:03:16AM -0500, Devin Heitmueller wrote:
> Is this some product of doing the checksum comptuation in hardware, and
> the libpcap intercepts the packet before checksumming is performed?

It is the result of the network adapter doing the checksum computation
and the packet being handed to the underlying OS mechanism *used* by
libpcap/WinPcap before checksumming is performed.

I.e., there's nothing libpcap/WinPcap can do about it.

In fact, it might well be, at least for some network adapters, that they
don't even supply to the host the checksum that they put on the packet
(because, most of the time, the host doesn't care, and telling the host
about it involves another transaction with the host - why waste CPU time
and bus bandwidth if the host doesn't care?), in which case there's not
even anything that the adapter's driver, or the OS's networking stack
and packet capture mechanism, can do about it.