AC_SUBST(HAVE_ETHER_ADDR_EQUAL, undef)
fi
+AC_MSG_CHECKING([kernel source for nla_put_be16])
+if test -f $ksourcedir/include/net/netlink.h && \
+ $GREP -q 'nla_put_be16' $ksourcedir/include/net/netlink.h; then
+ AC_MSG_RESULT(yes)
+ AC_SUBST(HAVE_NLA_PUT_BE16, define)
+else
+ AC_MSG_RESULT(no)
+ AC_SUBST(HAVE_NLA_PUT_BE16, undef)
+fi
+
AC_MSG_CHECKING([kernel source for nla_put_be64])
if test -f $ksourcedir/include/net/netlink.h && \
$GREP -q 'nla_put_be64' $ksourcedir/include/net/netlink.h; then
fi
AC_MSG_CHECKING([kernel source for bool checkentry function prototype])
-if test -f $ksourcedir/net/netfilter/xt_state.c && \
- $GREP -q 'bool state_mt_check' $ksourcedir/net/netfilter/xt_state.c; then
+if test -f $ksourcedir/include/linux/netfilter/x_tables.h && \
+ $GREP -q 'bool .\*checkentry.' $ksourcedir/include/linux/netfilter/x_tables.h; then
AC_MSG_RESULT(yes)
AC_SUBST(HAVE_CHECKENTRY_BOOL, define)
else
fi
AC_MSG_CHECKING([kernel source for old struct xt_target_param])
-if test -f $ksourcedir/net/netfilter/xt_TCPMSS.c && \
- $GREP -q 'const struct xt_target_param' $ksourcedir/net/netfilter/xt_TCPMSS.c; then
+if test -f $ksourcedir/include/linux/netfilter/x_tables.h && \
+ $GREP -q '^struct xt_target_param ' $ksourcedir/include/linux/netfilter/x_tables.h; then
AC_MSG_RESULT(yes)
AC_SUBST(HAVE_XT_TARGET_PARAM, define)
else
AC_SUBST(HAVE_KVFREE, undef)
fi
+AC_MSG_CHECKING([kernel source for struct net in struct xt_mtchk_param])
+if test -f $ksourcedir/include/linux/netfilter/x_tables.h && \
+ $AWK '/^struct xt_mtchk_param / {for(i=1; i<=5; i++) {getline; print}}' $ksourcedir/include/linux/netfilter/x_tables.h | \
+ $GREP -q 'struct net '; then
+ AC_MSG_RESULT(yes)
+ AC_SUBST(HAVE_XT_MTCHK_PARAM_STRUCT_NET, define)
+else
+ AC_MSG_RESULT(no)
+ AC_SUBST(HAVE_XT_MTCHK_PARAM_STRUCT_NET, undef)
+fi
+
AC_MSG_CHECKING([kernel source for struct net in the change function of tcf_ematch_ops])
if test -f $ksourcedir/include/net/pkt_cls.h && \
$AWK '/^struct tcf_ematch_ops / {for(i=1; i<=5; i++) {getline; print}}' $ksourcedir/include/net/pkt_cls.h | \
#@HAVE_STRUCT_XT_ACTION_PARAM@ HAVE_STRUCT_XT_ACTION_PARAM
#@HAVE_VZALLOC@ HAVE_VZALLOC
#@HAVE_ETHER_ADDR_EQUAL@ HAVE_ETHER_ADDR_EQUAL
+#@HAVE_NLA_PUT_BE16@ HAVE_NLA_PUT_BE16
#@HAVE_NLA_PUT_BE64@ HAVE_NLA_PUT_BE64
#@HAVE_NL_INFO_PORTID@ HAVE_NL_INFO_PORTID
#define HAVE_NETLINK_DUMP_START_ARGS @HAVE_NETLINK_DUMP_START_ARGS@
#@HAVE_USER_NS_IN_STRUCT_NET@ HAVE_USER_NS_IN_STRUCT_NET
#@HAVE_RBTREE_POSTORDER_FOR_EACH_ENTRY_SAFE@ HAVE_RBTREE_POSTORDER_FOR_EACH_ENTRY_SAFE
#@HAVE_KVFREE@ HAVE_KVFREE
+#@HAVE_XT_MTCHK_PARAM_STRUCT_NET@ HAVE_XT_MTCHK_PARAM_STRUCT_NET
#@HAVE_TCF_EMATCH_OPS_CHANGE_ARG_NET@ HAVE_TCF_EMATCH_OPS_CHANGE_ARG_NET
#@HAVE_TCF_EMATCH_STRUCT_NET@ HAVE_TCF_EMATCH_STRUCT_NET
}
#endif
-#ifdef NLA_PUT_NET16
+#ifndef HAVE_NLA_PUT_BE16
static inline int nla_put_be16(struct sk_buff *skb, int attrtype, __be16 value)
{
return nla_put(skb, attrtype, sizeof(__be16), &value);
#define CHECK_FAIL(err) 0
#define CONST const
#define FTYPE bool
-#define XT_PAR_NET(par) NULL
#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) */
#define CHECK_OK 0
#define CHECK_FAIL(err) (err)
#define CONST
#define FTYPE int
+#endif
+#ifdef HAVE_XT_MTCHK_PARAM_STRUCT_NET
#define XT_PAR_NET(par) (par)->net
+#else
+#define XT_PAR_NET(par) NULL
#endif
static inline int