trivial fix: ipchksum takes an unspecified input blob, not explicitly a number of shorts.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3512 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
Stefan Reinauer 2008-08-16 15:16:36 +00:00 committed by Stefan Reinauer
parent 67b35cb163
commit 11e45cd3ff
2 changed files with 4 additions and 2 deletions

View File

@ -151,7 +151,7 @@ int tolower(int c);
int toupper(int c);
/* libc/ipchecksum.c */
unsigned short ipchksum(const unsigned short *ptr, unsigned long nbytes);
unsigned short ipchksum(const void *ptr, unsigned long nbytes);
/* libc/malloc.c */
void free(void *ptr);

View File

@ -4,6 +4,7 @@
* It has originally been taken from the FreeBSD project.
*
* Copyright (c) 2001 Charles Mott <cm@linktel.net>
* Copyright (c) 2008 coresystems GmbH
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@ -30,9 +31,10 @@
#include <libpayload.h>
unsigned short ipchksum(const unsigned short *ptr, unsigned long nbytes)
unsigned short ipchksum(const void *vptr, unsigned long nbytes)
{
int sum, oddbyte;
const unsigned short *ptr = vptr;
sum = 0;
while (nbytes > 1) {