]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
OpenBSD 5.2 build fixes, Unit test fix.
authorVictor Julien <victor@inliniac.net>
Thu, 8 Nov 2012 08:47:02 +0000 (09:47 +0100)
committerVictor Julien <victor@inliniac.net>
Thu, 8 Nov 2012 12:47:36 +0000 (13:47 +0100)
autogen.sh
configure.ac
src/log-pcap.c
src/source-pcap-file.c
src/source-pcap.c
src/suricata-common.h
src/threads.c

index bb9c26407b4e501c3637201459e89a64b232e7aa..1e15b809aef742edd6ec0cf462a54ed75af1d55d 100755 (executable)
@@ -10,5 +10,5 @@ else
   echo "Failed to find libtoolize or glibtoolize, please ensure it is installed and accessible via your PATH env variable"
   exit 1
 fi;
-autoreconf -fv --install || exit 1
+autoreconf -fv --install || exit 1
 echo "You can now run \"./configure\" and then \"make\"."
index aa6f8bf75b35001eea1acb722fd54306c34eb801..52fdf09a06d1ec166d6a68df79b7f4ad30860874 100644 (file)
@@ -128,43 +128,49 @@ AC_INIT(configure.ac)
 
     e_magic_file="/usr/share/file/magic"
     case "$host" in
-           *-*-*freebsd*)
-                   CFLAGS="${CFLAGS} -DOS_FREEBSD"
-                   CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/usr/local/include/libnet11"
-                   LDFLAGS="${LDFLAGS} -L/usr/local/lib -L/usr/local/lib/libnet11"
-                   e_magic_file="/usr/share/misc/magic"
-                    ;;
-           *-*-openbsd5.1)
-                    CFLAGS="${CFLAGS} -D__OpenBSD__ -fgnu89-inline"
-                    CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/usr/local/include/libnet-1.1"
-                    LDFLAGS="${LDFLAGS} -L/usr/local/lib -I/usr/local/lib/libnet-1.1"
-                    e_magic_file="/usr/local/share/misc/magic.mgc"
-                    ;;
-           *-*-openbsd*)
-                    CFLAGS="${CFLAGS} -D__OpenBSD__ -fgnu89-inline"
-                    CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/usr/local/include/libnet-1.1"
-                    LDFLAGS="${LDFLAGS} -L/usr/local/lib -I/usr/local/lib/libnet-1.1"
-                   e_magic_file="/usr/local/share/file/magic.mgc"
-                    ;;
-          *darwin*|*Darwin*)
-                    CFLAGS="${CFLAGS} -DOS_DARWIN"
-                    CPPFLAGS="${CPPFLAGS} -I/opt/local/include"
-                    LDFLAGS="${LDFLAGS} -L/opt/local/lib"
-                           ;;
-           *-*-linux*)
-                    #for now do nothing
-                    ;;
-           *-*-mingw32*)
-                    CFLAGS="${CFLAGS} -DOS_WIN32"
-                    LDFLAGS="${LDFLAGS} -lws2_32"
-                           WINDOWS_PATH="yes"
-                    ;;
-           *-*-cygwin)
-                             WINDOWS_PATH="yes"
-                    ;;
-          *)
-               AC_MSG_WARN([unsupported OS this may or may not work])
-               ;;
+        *-*-*freebsd*)
+            CFLAGS="${CFLAGS} -DOS_FREEBSD"
+            CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/usr/local/include/libnet11"
+            LDFLAGS="${LDFLAGS} -L/usr/local/lib -L/usr/local/lib/libnet11"
+            e_magic_file="/usr/share/misc/magic"
+            ;;
+        *-*-openbsd5.1)
+            CFLAGS="${CFLAGS} -D__OpenBSD__ -fgnu89-inline"
+            CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/usr/local/include/libnet-1.1"
+            LDFLAGS="${LDFLAGS} -L/usr/local/lib -I/usr/local/lib/libnet-1.1"
+            e_magic_file="/usr/local/share/misc/magic.mgc"
+            ;;
+        *-*-openbsd5.2)
+            CFLAGS="${CFLAGS} -D__OpenBSD__"
+            CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/usr/local/include/libnet-1.1"
+            LDFLAGS="${LDFLAGS} -L/usr/local/lib -I/usr/local/lib/libnet-1.1"
+            e_magic_file="/usr/local/share/misc/magic.mgc"
+            ;;
+        *-*-openbsd*)
+            CFLAGS="${CFLAGS} -D__OpenBSD__ -fgnu89-inline"
+            CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/usr/local/include/libnet-1.1"
+            LDFLAGS="${LDFLAGS} -L/usr/local/lib -I/usr/local/lib/libnet-1.1"
+            e_magic_file="/usr/local/share/file/magic.mgc"
+            ;;
+        *darwin*|*Darwin*)
+            CFLAGS="${CFLAGS} -DOS_DARWIN"
+            CPPFLAGS="${CPPFLAGS} -I/opt/local/include"
+            LDFLAGS="${LDFLAGS} -L/opt/local/lib"
+            ;;
+        *-*-linux*)
+            #for now do nothing
+            ;;
+        *-*-mingw32*)
+            CFLAGS="${CFLAGS} -DOS_WIN32"
+            LDFLAGS="${LDFLAGS} -lws2_32"
+            WINDOWS_PATH="yes"
+            ;;
+        *-*-cygwin)
+            WINDOWS_PATH="yes"
+            ;;
+        *)
+            AC_MSG_WARN([unsupported OS this may or may not work])
+            ;;
     esac
     AC_MSG_RESULT(ok)
 
@@ -641,7 +647,7 @@ AC_INIT(configure.ac)
         CPPFLAGS="${CPPFLAGS} -I${with_libnet_includes}"
         libnet_dir="${with_libnet_includes}"
     else
-        libnet_dir="/usr/include /usr/local/include /usr/local/include/libnet11 /opt/local/include"
+        libnet_dir="/usr/include /usr/local/include /usr/local/include/libnet11 /opt/local/include /usr/local/include/libnet-1.1"
     fi
 
     if test "x$with_libnet_libraries" != "xno"; then
@@ -820,6 +826,7 @@ AC_INIT(configure.ac)
     if test "$with_libpcap_libraries" != "no"; then
         LDFLAGS="${LDFLAGS}  -L${with_libpcap_libraries}"
     fi
+    AC_CHECK_HEADERS([pcap.h pcap/pcap.h])
 
     LIBPCAP=""
     AC_CHECK_LIB(pcap, pcap_open_live,, LIBPCAP="no", [-lpthread])
@@ -841,7 +848,12 @@ AC_INIT(configure.ac)
     TMPLIBS="${LIBS}"
     AC_CHECK_LIB(pcap, pcap_activate,, LPCAPVTEST="no")
     if test "$LPCAPVTEST" != "no"; then
-        CFLAGS="${CFLAGS} `pcap-config --defines` `pcap-config --cflags` -DLIBPCAP_VERSION_MAJOR=1"
+        AC_PATH_PROG(HAVE_PCAP_CONFIG, pcap-config, "no")
+        if test "$HAVE_PCAP_CONFIG" = "no"; then
+            CFLAGS="${CFLAGS} -DLIBPCAP_VERSION_MAJOR=1"
+        else
+            CFLAGS="${CFLAGS} `pcap-config --defines` `pcap-config --cflags` -DLIBPCAP_VERSION_MAJOR=1"
+        fi
     else
         CFLAGS="${CFLAGS} -DLIBPCAP_VERSION_MAJOR=0"
     fi
@@ -1001,6 +1013,8 @@ AC_INIT(configure.ac)
 
 
   # Check for libcap-ng
+    case $host in
+    *-*-linux*)
     AC_ARG_WITH(libcap_ng_includes,
             [  --with-libcap_ng-includes=DIR  libcap_ng include directory],
             [with_libcap-ng_includes="$withval"],[with_libcap_ng_includes=no])
@@ -1038,7 +1052,8 @@ AC_INIT(configure.ac)
         echo "   Suricata will be built without support for dropping privs."
         echo
     fi
-
+    ;;
+    esac
 
   # Check for DAG support.
     AC_ARG_ENABLE(dag,
index f40fe2b0e036c94ade2b442dfc696966198cf4de..5733a9046e966ded968e697d2601a51e0acde4a2 100644 (file)
  * Pcap packet logging module.
  */
 
-#if LIBPCAP_VERSION_MAJOR == 1
-#include <pcap/pcap.h>
-#else
-#include <pcap.h>
-#endif
-
 #include "suricata-common.h"
 #include "debug.h"
 #include "detect.h"
index be864dd324826b15fe2531912ec9823ebff9df5b..69f69144782c478d496fac00df22812809016832 100644 (file)
  * File based pcap packet acquisition support
  */
 
-#if LIBPCAP_VERSION_MAJOR == 1
-#include <pcap/pcap.h>
-#else
-#include <pcap.h>
-#endif /* LIBPCAP_VERSION_MAJOR */
-
 #include "suricata-common.h"
 #include "suricata.h"
 #include "decode.h"
index c0e0bec778bb0b02e7cd2494b96e58351f113192..acb8b16cc3907bbdf68448140aaa4e8ceb512dd6 100644 (file)
  * Live pcap packet acquisition support
  */
 
-#if LIBPCAP_VERSION_MAJOR == 1
-#include <pcap/pcap.h>
-#else
-#include <pcap.h>
-#endif
-
 #include "suricata-common.h"
 #include "suricata.h"
 #include "decode.h"
index 445fa441062e80a32b6a85304a26a80278ecae64..09385f1c57ba0676ff102ef5d71be86c56693fae 100644 (file)
 #include <assert.h>
 #define BUG_ON(x) assert(!(x))
 
+#ifdef HAVE_PCAP_H
+#include <pcap.h>
+#endif
+
+#ifdef HAVE_PCAP_PCAP_H
+#include <pcap/pcap.h>
+#endif
+
 /* we need this to stringify the defines which are supplied at compiletime see:
    http://gcc.gnu.org/onlinedocs/gcc-3.4.1/cpp/Stringification.html#Stringification */
 #define xstr(s) str(s)
index 527c017687a14cf93d65df7d63241e2815267f28..2b2c919d1193b5336cb343571b557e760d5bd1d4 100644 (file)
@@ -67,7 +67,11 @@ int ThreadMacrosTest02Spinlocks(void) {
     int r = 0;
     r |= SCSpinInit(&mut, 0);
     r |= SCSpinLock(&mut);
+#ifndef __OpenBSD__
     r |= (SCSpinTrylock(&mut) == EBUSY)? 0 : 1;
+#else
+    r |= (SCSpinTrylock(&mut) == EDEADLK)? 0 : 1;
+#endif
     r |= SCSpinUnlock(&mut);
     r |= SCSpinDestroy(&mut);