This was introduced with commit
0f82228387ae ("Use more robust awk
patterns to check for backward compatibility") on RHEL 7.3+ because
it's kernel contains backported upstream commit
633c9a840d0b
("netfilter: nfnetlink: avoid recurrent netns lookups in call_batch")
that introduces @net of @struct net type parameter matched with $GREP
after $AWK returns whole @struct nfnl_callback.
This causes incorrect IPSET_CBFN() prototype choose for ->call()
of @struct nfnl_callback producing following warnings during the build:
.../ipset/ip_set_core.c:2007:3: warning: initialization from
incompatible pointer type [enabled by default]
.call = ip_set_destroy,
^
../ipset/ip_set_core.c:2007:3: warning: (near initialization
for ‘ip_set_netlink_subsys_cb[3].call’) [enabled by default]
Fix by matching pattern to the end of first function pointer in
@struct nfnl_callback instead of end of struct.
Signed-off-by: Serhey Popovych <serhe.popovych@gmail.com>
Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
AC_SUBST(HAVE_NLA_PUT_IN_ADDR, undef)
fi
-AC_MSG_CHECKING([kernel source for struct net in struct nfnl_callback])
+AC_MSG_CHECKING([kernel source for struct net in the call() function in struct nfnl_callback])
if test -f $ksourcedir/include/linux/netfilter/nfnetlink.h && \
- $AWK '/^struct nfnl_callback /,/^}/' $ksourcedir/include/linux/netfilter/nfnetlink.h | \
+ $AWK '/^struct nfnl_callback /,/\);$/' $ksourcedir/include/linux/netfilter/nfnetlink.h | \
$GREP -q 'struct net'; then
AC_MSG_RESULT(yes)
AC_SUBST(HAVE_NET_IN_NFNL_CALLBACK_FN, define)