pfring: checks if the lib version is >= 6

Checks if the PF_RING version installed on the system is 6,
so old version won't be supported.
pull/1166/merge
Giuseppe Longo 11 years ago committed by Victor Julien
parent 55c45ac91d
commit dde78e499c

@ -997,86 +997,40 @@
LIBPFRING=""
AC_CHECK_LIB(pfring, pfring_open,, LIBPFRING="no", [-lpcap])
if test "$LIBPFRING" = "no"; then
LIBPFRING=""
AC_CHECK_LIB(pfring, pfring_stats,, LIBPFRING="no", [-lpcap -lrt])
if test "$LIBPFRING" = "no"; then
if test "$LIBPFRING" != "no"; then
STORECFLAGS="${CFLAGS}"
CFLAGS="${CFLAGS} -Werror"
AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM(
[
#include <pfring.h>
],
[
pfring_recv_chunk(NULL, NULL, 0, 0);
])],
[pfring_recv_chunk="yes"],
[pfring_recv_chunk="no"])
CFLAGS="${STORECFLAGS}"
if test "x$pfring_recv_chunk" != "xyes"; then
if test "x$enable_pfring" = "xyes"; then
echo
echo " ERROR! --enable-pfring was passed but the library was not found or version is >4, go get it"
echo " from http://www.ntop.org/PF_RING.html"
echo " ERROR! --enable-pfring was passed but the library version is < 6, go get it"
echo " from http://www.ntop.org/products/pf_ring/"
echo
exit 1
fi
else
LIBS="${LIBS} -lrt"
LIBS="${LIBS} -lrt -lnuma"
fi
fi
LIBPFRING_ENABLE_RING=""
AC_CHECK_LIB(pfring, pfring_enable_ring,, LIBPFRING_ENABLE_RING="no", [-lpcap])
if test "$LIBPFRING_ENABLE_RING" != "no"; then
AC_DEFINE([HAVE_PFRING_ENABLE],[1],[PF_RING pfring_enable_ring is available])
fi
LIBPFRING_CLUSTER_TYPE=""
AC_CHECK_LIB(pfring, pfring_set_cluster,
, LIBPFRING_CLUSTER_TYPE="no", [-lpcap])
if test "$LIBPFRING_CLUSTER_TYPE" != "no"; then
AC_DEFINE([HAVE_PFRING_CLUSTER_TYPE],[1],[PF_RING pfring_set_cluster is available])
fi
LIBPFRING_BPF_FILTER=""
AC_CHECK_LIB(pfring, pfring_set_bpf_filter,
, LIBPFRING_BPF_FILTER="no", [-lpcap])
LIBPFRING_REMOVE_BPF_FILTER=""
AC_CHECK_LIB(pfring, pfring_remove_bpf_filter,
, LIBPFRING_REMOVE_BPF_FILTER="no", [-lpcap])
if test "$LIBPFRING_BPF_FILTER" != "no" -a "$LIBPFRING_REMOVE_BPF_FILTER" != "no"; then
AC_DEFINE([HAVE_PFRING_SET_BPF_FILTER],[1],[PF_RING pfring_set_bpf_filter is available])
fi
STORE_CFLAGS="${CFLAGS}"
CFLAGS="${CFLAGS} -Werror"
AC_MSG_CHECKING([if pfring_recv expects u_char**])
AC_TRY_COMPILE([
#include <pfring.h>
],
[
u_char *buffer;
pfring_recv(NULL, &buffer, 0, NULL, 1);
],
[ pfring_recv_uchar_buff=yes ], [:])
CFLAGS="${STORE_CFLAGS}"
if test "$pfring_recv_uchar_buff" = "yes"; then
AC_DEFINE([HAVE_PFRING_RECV_UCHAR],[1],[PF_RING pfring_recv buffer is u_char**])
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
# check if the argument to nfq_get_payload is signed or unsigned
AC_MSG_CHECKING([for post 5.4.0 pfring_open function])
STORECFLAGS="${CFLAGS}"
CFLAGS="${CFLAGS} -Werror"
AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM(
[
#include <pfring.h>
],
[
pfring_open(NULL, 0, 0);
])],
[pfring_new_open="yes"],
[pfring_new_open="no"])
AC_MSG_RESULT($pfring_new_open)
if test "x$pfring_new_open" = "xyes"; then
AC_DEFINE([HAVE_PFRING_OPEN_NEW], [1], [For post 5.4.0 version of pfring_open])
if test "x$enable_pfring" = "xyes"; then
echo
echo " ERROR! --enable-pfring was passed but the library was not found, go get it"
echo " from http://www.ntop.org/products/pf_ring/"
echo
exit 1
fi
fi
CFLAGS="${STORECFLAGS}"
])
# AF_PACKET support

Loading…
Cancel
Save