On Thu, Sep 25, 2014 at 03:57:04AM +0300, Vadim Kochan wrote: > Added declaration checking for NFT_EXPR_LOG_LEVEL enum > which was added for 3.17 kernel version. > > Signed-off-by: Vadim Kochan <vadim4j@xxxxxxxxx> > --- > configure.ac | 2 ++ > src/netlink_delinearize.c | 2 ++ > src/netlink_linearize.c | 2 ++ > 3 files changed, 6 insertions(+) > > diff --git a/configure.ac b/configure.ac > index 3a7647f..d3971c7 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -99,6 +99,8 @@ AC_TYPE_UINT16_T > AC_TYPE_UINT32_T > AC_TYPE_UINT64_T > > +AC_CHECK_DECLS([NFT_EXPR_LOG_LEVEL],[],[],[[#include <libnftnl/expr.h>]]) > + > # Checks for library functions. > AC_CHECK_FUNCS([memmove memset strchr strdup strerror strtoull]) > > diff --git a/src/netlink_delinearize.c b/src/netlink_delinearize.c > index 796b632..cf2ec00 100644 > --- a/src/netlink_delinearize.c > +++ b/src/netlink_delinearize.c > @@ -447,11 +447,13 @@ static void netlink_parse_log(struct netlink_parse_ctx *ctx, > nft_rule_expr_get_u16(nle, NFT_EXPR_LOG_QTHRESHOLD); > stmt->log.flags |= STMT_LOG_QTHRESHOLD; > } > +#if HAVE_DECL_NFT_EXPR_LOG_LEVEL > if (nft_rule_expr_is_set(nle, NFT_EXPR_LOG_LEVEL)) { > stmt->log.level = > nft_rule_expr_get_u32(nle, NFT_EXPR_LOG_LEVEL); > stmt->log.flags |= STMT_LOG_LEVEL; > } > +#endif > list_add_tail(&stmt->list, &ctx->rule->stmts); > } > I don't want to pollute the source code with many ifdef's, sorry. And if I apply this, more similar follow up patches will come in the future. I'll make a patch to some recommended libnftnl version at configure stage using PKG_CHECK_MODULES. -- 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