iptables-1.4.2: libxt_TOS.c compilation ending with error - IPPROTO_SCTP redefined

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



When I compiled iptables-1.4.2 I get an error:

In file included from /usr/include/netinet/ip.h:25,
                 from /usr/include/linux/ip.h:19,
                 from tos_values.c:4,
                 from libxt_TOS.c:15:
/usr/include/netinet/in.h:84: error: expected identifier before numeric constant
make[2]: *** [libxt_TOS.oo] Error 1



libxt_TOS.c:12
#include <xtables.h>
#include <linux/netfilter/xt_DSCP.h>
#include <linux/netfilter_ipv4/ipt_TOS.h>
#include "tos_values.c"

/usr/include/xtables.h:10
#ifndef IPPROTO_SCTP
#define IPPROTO_SCTP 132
#endif

/usr/include/netinet/in.h:84 (through tos_values.c -> linux/ip.h -> netinet/ip.h)
    IPPROTO_SCTP = 132,	   /* Stream Control Transmission Protocol.  */
#define IPPROTO_SCTP		IPPROTO_SCTP


On my gentoo box IPPROTO_SCTP is defined in /usr/include/netinet/in.h (from sys-libs/glibc-2.7 package)
and in /usr/include/xtables.h (net-firewall/iptables-1.4.1.1 package) too (conditionally).

However, in libxt_TOS.c <xtables.h> preceded <netinet/in.h> and SCTP is already defined by <xtables.h>.
So, definition in <netinet/in.h> ending with error, because line "IPPROTO_SCTP = 132", 
is probably interpreted as "132 = 132"


As a temporary workaround, I included <netinet/in.h> before <xtables.h>:
--- iptables-1.4.2/extensions/libxt_TOS.c.old   2008-10-21 20:06:18.334809888 +0200
+++ iptables-1.4.2/extensions/libxt_TOS.c       2008-10-21 20:06:47.774810167 +0200
@@ -9,6 +9,7 @@
 #include <stdlib.h>
 #include <string.h>

+#include <netinet/in.h>
 #include <xtables.h>
 #include <linux/netfilter/xt_DSCP.h>
 #include <linux/netfilter_ipv4/ipt_TOS.h>
---

JiM
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netfitler Users]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux