#includes in asm-i386/checksum.h
PATCH 1/1 #includes in asm-i386/checksum.h
Noticed this a while ago, still there in 2.4.17... checksum.h is not self-consistent. Code which uses the file but does not know to include some other headers first will get compile errors:
/usr/src/linux-2.4.17include/asm/checksum.h:159: warning: `struct in6_addr' declared inside parameter list /usr/src/linux-2.4.17include/asm/checksum.h:159: warning: its scope is only this definition or declaration, which is probably not what you want. /usr/src/linux-2.4.17include/asm/checksum.h: In function `csum_and_copy_to_user':/usr/src/linux-2.4.17include/asm/checksum.h:188: warning: implicit declaration of function access_ok' /usr/src/linux-2.4.17include/asm/checksum.h:188: VERIFY_WRITE' undeclared (first use in this function) /usr/src/linux-2.4.17include/asm/checksum.h:188: (Each undeclared identifier is reported only once /usr/src/linux-2.4.17include/asm/checksum.h:188: for each function it appears in.)
This only happens when one uses checksum.h without previously including the other given headers, as might be done when people are writing some wack new networking code (like me :)
Patch follows.
--------------------------------------------------------------------------------
checksum.h Mon Jan 21 14:17:50 2002 renamed from checksum.h.original Thu Jul 26 14:41:22 2001 +5 -0
@@ -1,6 +1,11 @@ #ifndef _I386_CHECKSUM_H #define _I386_CHECKSUM_H +/* Required for 'struct in6_addr' */ +#include <net/ipv6.h> + +/* Required for 'VERIFY_WRITE' #define */ +#include <asm/uaccess.h> /* * computes the checksum of a memory block at buff, length len,
--------------------------------------------------------------------------------
Thanks,
-Eric
Signature · 5 lines
-------------------------------------------- Eric H. Weigle CCS-1, RADIANT team [email protected] Los Alamos National Lab (505) 665-4937 http://home.lanl.gov/ehw/ --------------------------------------------