Replaced outdated nDPI version info with the correct one.

* add CI job to verify the lowest known-to-work-libnDPI-version

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
This commit is contained in:
Toni Uhlig
2022-07-14 04:09:15 +02:00
parent fc442180da
commit ef94b83a62
3 changed files with 15 additions and 12 deletions

View File

@@ -13,12 +13,16 @@ jobs:
test: test:
name: ${{ matrix.os }} ${{ matrix.gcrypt }} name: ${{ matrix.os }} ${{ matrix.gcrypt }}
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
env:
CMAKE_C_COMPILER: ${{ matrix.compiler }}
CMAKE_C_FLAGS: -Werror
strategy: strategy:
fail-fast: true fail-fast: true
matrix: matrix:
os: ["ubuntu-latest", "ubuntu-18.04"] os: ["ubuntu-latest", "ubuntu-18.04"]
ndpid_gcrypt: ["-DNDPI_WITH_GCRYPT=OFF", "-DNDPI_WITH_GCRYPT=ON"] ndpid_gcrypt: ["-DNDPI_WITH_GCRYPT=OFF", "-DNDPI_WITH_GCRYPT=ON"]
ndpid_zlib: ["-DENABLE_ZLIB=OFF", "-DENABLE_ZLIB=ON"] ndpid_zlib: ["-DENABLE_ZLIB=OFF", "-DENABLE_ZLIB=ON"]
ndpi_min_version: ["4.4"]
include: include:
- compiler: "default-cc" - compiler: "default-cc"
os: "ubuntu-latest" os: "ubuntu-latest"
@@ -50,7 +54,7 @@ jobs:
- name: Configure nDPId - name: Configure nDPId
run: | run: |
mkdir build && cd build mkdir build && cd build
env CMAKE_C_COMPILER=${{ matrix.compiler }} CMAKE_C_FLAGS='-Werror' cmake .. -DENABLE_COVERAGE=ON -DBUILD_EXAMPLES=ON -DBUILD_NDPI=ON -DENABLE_SANITIZER=ON ${{ matrix.ndpid_zlib }} ${{ matrix.ndpid_gcrypt }} cmake .. -DENABLE_COVERAGE=ON -DBUILD_EXAMPLES=ON -DBUILD_NDPI=ON -DENABLE_SANITIZER=ON ${{ matrix.ndpid_zlib }} ${{ matrix.ndpid_gcrypt }}
- name: Build nDPId - name: Build nDPId
run: | run: |
make -C build all VERBOSE=1 make -C build all VERBOSE=1
@@ -75,11 +79,10 @@ jobs:
- name: CPack DEB - name: CPack DEB
run: | run: |
cd ./build && cpack -G DEB && cd .. cd ./build && cpack -G DEB && cd ..
# enable this block after the next libnDPI release - name: Build against libnDPI-${{ matrix.ndpi_min_version }}
# - name: Build against libnDPI-4.3 run: |
# run: | mkdir build-local-ndpi && cd build-local-ndpi
# mkdir build-local-ndpi && cd build-local-ndpi wget 'https://github.com/ntop/nDPI/archive/refs/tags/${{ matrix.ndpi_min_version }}.tar.gz'
# wget 'https://github.com/ntop/nDPI/archive/refs/tags/4.3.tar.gz' tar -xzvf ${{ matrix.ndpi_min_version }}.tar.gz && cd nDPI-${{ matrix.ndpi_min_version }} && ./autogen.sh --prefix=/usr --with-only-libndpi CC=${{ matrix.compiler }} CXX=false CFLAGS='-Werror' && sudo make install && cd ..
# tar -xzvf 4.3.tar.gz && cd nDPI-4.3 && ./autogen.sh --prefix=/usr --with-only-libndpi CC=${{ matrix.compiler }} CXX=false CFLAGS='-Werror' && sudo make install && cd .. cmake .. -DENABLE_COVERAGE=ON -DBUILD_EXAMPLES=ON -DBUILD_NDPI=OFF -DENABLE_SANITIZER=ON ${{ matrix.ndpi_min_version }}
# env CMAKE_C_COMPILER=${{ matrix.compiler }} CMAKE_C_FLAGS='-Werror' cmake .. -DENABLE_COVERAGE=ON -DBUILD_EXAMPLES=ON -DBUILD_NDPI=OFF -DENABLE_SANITIZER=ON ${{ matrix.ndpid_zlib }} make all VERBOSE=1
# make all VERBOSE=1

View File

@@ -4,7 +4,7 @@
# abstract # abstract
nDPId is a set of daemons and tools to capture, process and classify network traffic. nDPId is a set of daemons and tools to capture, process and classify network traffic.
It's minimal dependencies (besides a half-way modern c library and POSIX threads) are libnDPI (> 4.2.0 or current github dev branch) and libpcap. It's minimal dependencies (besides a half-way modern c library and POSIX threads) are libnDPI (>= 4.4.0 or current github dev branch) and libpcap.
The daemon nDPId is capable of multithreading for packet processing, but w/o mutexes for performance reasons. The daemon nDPId is capable of multithreading for packet processing, but w/o mutexes for performance reasons.
Instead synchronization is achieved by a packet distribution mechanism. Instead synchronization is achieved by a packet distribution mechanism.

View File

@@ -47,8 +47,8 @@
#define DLT_DSA_TAG_EDSA 285 #define DLT_DSA_TAG_EDSA 285
#endif #endif
#if ((NDPI_MAJOR == 4 && NDPI_MINOR < 3) || NDPI_MAJOR < 4) && NDPI_API_VERSION < 6336 #if ((NDPI_MAJOR == 4 && NDPI_MINOR < 4) || NDPI_MAJOR < 4) && NDPI_API_VERSION < 6336
#error "nDPI >= 4.3.0 or API version >= 6336 required" #error "nDPI >= 4.4.0 or API version >= 6336 required"
#endif #endif
#if !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4) || !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8) #if !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4) || !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8)