Type conflicts in in.h header files.

From: Scott Porter
Date: Sat Nov 01 2003 - 17:11:52 EST


Hi,

This is my first posting here, I'm not subscribed so I'd appreciate any responses via email (although I will scan the lkml via Google).

There appears to be a conflict between the structures defined in the following files:
/usr/include/linux/in.h
/usr/include/netinet/in.h

The kernel source I am using:
2.4.20-gentoo-r5 (I assume the Gentoo patches wouldn't cause this though?)

I'm not much of a C programmer, but I'm attempting to build an old daemon called "mrouted" to allow me to set up a multicast router using linux (there doesn't seem to be ANY current documentation about this, so I'm assuming I still need to use this daemon?!). The kernel was compiled with all routing options enabled. Here's a partial error log during the build:

gcc -D__BSD_SOURCE -Ibsd -O -Iinclude-linux -DRSRR -c -o igmp.o igmp.c
In file included from /usr/include/linux/mroute.h:5,
from defs.h:34,
from igmp.c:14:
/usr/include/linux/in.h:25: conflicting types for `IPPROTO_IP'
/usr/include/netinet/in.h:32: previous declaration of `IPPROTO_IP'
/usr/include/linux/in.h:26: conflicting types for `IPPROTO_ICMP'
/usr/include/netinet/in.h:36: previous declaration of `IPPROTO_ICMP'
/usr/include/linux/in.h:27: conflicting types for `IPPROTO_IGMP'
/usr/include/netinet/in.h:38: previous declaration of `IPPROTO_IGMP'
/usr/include/linux/in.h:28: conflicting types for `IPPROTO_IPIP'
/usr/include/netinet/in.h:40: previous declaration of `IPPROTO_IPIP'

I did "fix" this problem by symlinking linux/in.h -> netinet/in.h, however, this may have caused other problems during the build, but that's my problem I guess!

Cheers,
Scott

--
Scott Porter

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/