[U-Boot-Users] [patch] Get rid of annoying/superfluous bad-checksum warning message

U-boot can complain a lot about 'checksum bad' when it is attached to the network. It is annoying for ordinary users who start to doubt the network connection in general when they see messages like this.
This is caused by the routine NetCksumOk() which cannot handle IP-headers longer than 20 bytes. Those packages can be ignored anyway by U-boot, so we trash them now before checking the checksum.
Signed-off-by: Remy Bohmer linux@bohmer.net
--- net/net.c | 4 ++++ 1 file changed, 4 insertions(+)
Index: u-boot-git-03062008/net/net.c =================================================================== --- u-boot-git-03062008.orig/net/net.c 2008-06-03 14:40:20.000000000 +0200 +++ u-boot-git-03062008/net/net.c 2008-06-03 15:46:21.000000000 +0200 @@ -1407,6 +1407,10 @@ NetReceive(volatile uchar * inpkt, int l if (ip->ip_off & htons(0x1fff)) { /* Can't deal w/ fragments */ return; } + /* can't deal with headers > 20 bytes */ + if ((ip->ip_hl_v & 0x0f) > 0x05) { + return; + } if (!NetCksumOk((uchar *)ip, IP_HDR_SIZE_NO_UDP / 2)) { puts ("checksum bad\n"); return;

On Tue, Jun 3, 2008 at 6:48 AM, Remy Bohmer linux@bohmer.net wrote:
U-boot can complain a lot about 'checksum bad' when it is attached to the network. It is annoying for ordinary users who start to doubt the network connection in general when they see messages like this.
This is caused by the routine NetCksumOk() which cannot handle IP-headers longer than 20 bytes. Those packages can be ignored anyway by U-boot, so we trash them now before checking the checksum.
Signed-off-by: Remy Bohmer linux@bohmer.net
Applied to net repo.
regards, Ben
participants (2)
-
Ben Warren
-
Remy Bohmer