From: "David S. Miller" <davem@dm.cobaltmicro.com>
To: Geert.Uytterhoeven@cs.kuleuven.ac.be
Cc: Paul.Mackerras@cs.anu.edu.au, linuxppc-dev@lists.linuxppc.org,
linux-m68k@lists.linux-m68k.org
Subject: Re: TCPv4 checksum errors
Date: Tue, 22 Dec 1998 02:11:47 -0800 [thread overview]
Message-ID: <199812221011.CAA09825@dm.cobaltmicro.com> (raw)
In-Reply-To: <Pine.LNX.4.03.9812221039490.5727-100000@mercator.cs.kuleuven.ac.be> (message from Geert Uytterhoeven on Tue, 22 Dec 1998 11:01:13 +0100 (CET))
Date: Tue, 22 Dec 1998 11:01:13 +0100 (CET)
From: Geert Uytterhoeven <Geert.Uytterhoeven@cs.kuleuven.ac.be>
On Tue, 22 Dec 1998, David S. Miller wrote:
> My suggestion is that since you can reproduce it, you should add code
> next to this printk statement which dumps the entire packet in HEX to
> the console. Then you can see what and who is at fault and where.
> If the packet is sufficiently small you can walk the checksum
> algorithm by hand and verify it for this test case.
Which one do I have to dump? skb->h.raw or skb->nh.raw? I guess
skb->nh.iph->tot_len bytes at skb->nh.raw?
Look at what the code next to the printk is verifying:
skb->csum = csum_partial((char *)th, len, 0);
if (tcp_v4_check(th,len,skb->nh.iph->saddr,skb->nh.iph->daddr,skb->csum))
So you need all the bytes from 'th' to 'th + len'. You also need the
values of the source and destination addresses from the IP header (at
skb->nh.iph->{saddr,daddr}).
Good luck.
Later,
David S. Miller
davem@dm.cobaltmicro.com
[[ This message was sent via the linuxppc-dev mailing list. Replies are ]]
[[ not forced back to the list, so be sure to Cc linuxppc-dev if your ]]
[[ reply is of general interest. To unsubscribe from linuxppc-dev, send ]]
[[ the message 'unsubscribe' to linuxppc-dev-request@lists.linuxppc.org ]]
next prev parent reply other threads:[~1998-12-22 10:11 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
1998-12-21 21:49 TCPv4 checksum errors Geert Uytterhoeven
1998-12-22 3:07 ` Paul Mackerras
1998-12-22 7:21 ` Martin Costabel
1998-12-22 9:21 ` Geert Uytterhoeven
1998-12-22 9:35 ` David S. Miller
1998-12-22 10:01 ` Geert Uytterhoeven
1998-12-22 10:11 ` David S. Miller [this message]
1998-12-22 10:38 ` Geert Uytterhoeven
1998-12-22 10:13 ` Arno Griffioen
1998-12-23 9:14 ` Geert Uytterhoeven
1998-12-23 13:23 ` Gabriel Paubert
1998-12-23 21:58 ` Alan Cox
1998-12-24 7:36 ` David S. Miller
1998-12-28 9:20 ` Andreas Schwab
1998-12-28 13:04 ` Alan Cox
1998-12-28 13:12 ` Andreas Schwab
1998-12-24 3:57 ` Paul Mackerras
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=199812221011.CAA09825@dm.cobaltmicro.com \
--to=davem@dm.cobaltmicro.com \
--cc=Geert.Uytterhoeven@cs.kuleuven.ac.be \
--cc=Paul.Mackerras@cs.anu.edu.au \
--cc=linux-m68k@lists.linux-m68k.org \
--cc=linuxppc-dev@lists.linuxppc.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.