iptables 1.3.3 assumes that ipt_scpt.h defines ELEMCOUNT, but ipt_scpt.h
moved to ARRAY_SIZE (which would be defined in linux/kernel.h).
The ip_conntrack_dir definition now resides in linux/netfilter/ip_conntrack_common.h

--- linux-libc-headers-2.6.15.99/include/linux/netfilter_ipv4/ipt_sctp.h.orig	2006-03-20 22:03:04.000000000 +0100
+++ linux-libc-headers-2.6.15.99/include/linux/netfilter_ipv4/ipt_sctp.h	2006-03-20 22:07:09.000000000 +0100
@@ -7,6 +7,8 @@
 
 #define IPT_SCTP_VALID_FLAGS		0x07
 
+#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
+#define ELEMCOUNT(x) (sizeof(x) / sizeof((x)[0]))
 
 struct ipt_sctp_flag_info {
 	u_int8_t chunktype;
--- linux-libc-headers-2.6.15.99/include/linux/netfilter_ipv4/ip_conntrack_tuple.h.orig	2006-03-20 21:51:10.000000000 +0100
+++ linux-libc-headers-2.6.15.99/include/linux/netfilter_ipv4/ip_conntrack_tuple.h	2006-03-20 21:51:12.000000000 +0100
@@ -89,13 +89,6 @@
 		(tuple)->dst.u.all = 0;				\
 	} while (0)
 
-enum ip_conntrack_dir
-{
-	IP_CT_DIR_ORIGINAL,
-	IP_CT_DIR_REPLY,
-	IP_CT_DIR_MAX
-};
-
 static inline int ip_ct_tuple_src_equal(const struct ip_conntrack_tuple *t1,
 				        const struct ip_conntrack_tuple *t2)
 {
