mirror of
https://github.com/optim-enterprises-bv/nDPId.git
synced 2025-10-30 01:42:22 +00:00
travis-ci build CMake project
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
This commit is contained in:
@@ -13,4 +13,11 @@ script:
|
||||
- env python3 --version
|
||||
- test/run_tests.sh nDPI
|
||||
- make -f Makefile.old clean
|
||||
# pkg-config build
|
||||
- PKG_CONFIG_PATH="$(realpath ./nDPI/_install/lib/pkgconfig)" make -f Makefile.old PKG_CONFIG_BIN=pkg-config ENABLE_DEBUG=yes ENABLE_SANITIZER=yes all examples
|
||||
- ./nDPId-test || test $? -eq 1
|
||||
- ./nDPId -h || test $? -eq 1
|
||||
# cmake/pkg-config build
|
||||
- mkdir -p build && cd build && PKG_CONFIG_PATH="$(realpath ../nDPI/_install/lib/pkgconfig)" cmake .. -DCMAKE_INSTALL_PREFIX=$(realpath ../_install) -DBUILD_EXAMPLES=ON -DENABLE_MEMORY_PROFILING=ON -DENABLE_SANITIZER=ON && make install
|
||||
- cd build && ./nDPId-test || test $? -eq 1
|
||||
- cd build && ./nDPId -h || test $? -eq 1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
cmake_minimum_required(VERSION 3.13)
|
||||
cmake_minimum_required(VERSION 3.12.4)
|
||||
project(nDPId C)
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
|
||||
find_package(PkgConfig REQUIRED)
|
||||
|
||||
27
nDPId-test.c
27
nDPId-test.c
@@ -308,26 +308,31 @@ int main(int argc, char ** argv)
|
||||
if (argc != 2)
|
||||
{
|
||||
usage(argv[0]);
|
||||
return -1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (signal(SIGPIPE, SIG_IGN) == SIG_ERR)
|
||||
{
|
||||
return -1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
nDPId_options.reader_thread_count = 1; /* Please do not change this! Generating meaningful pcap diff's relies on a
|
||||
single reader thread! */
|
||||
nDPId_options.instance_alias = strdup("nDPId-test");
|
||||
if (access(argv[1], R_OK) != 0)
|
||||
{
|
||||
fprintf(stderr, "%s: pcap file `%s' does not exist or is not readable\n", argv[0], argv[1]);
|
||||
return 1;
|
||||
}
|
||||
nDPId_options.pcap_file_or_interface = strdup(argv[1]);
|
||||
if (validate_options(argv[0]) != 0)
|
||||
{
|
||||
return -1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (setup_pipe(mock_pipefds) != 0 || setup_pipe(mock_servfds) != 0)
|
||||
{
|
||||
return -1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* We do not have any sockets, any socket operation must fail! */
|
||||
@@ -336,28 +341,28 @@ int main(int argc, char ** argv)
|
||||
|
||||
if (setup_remote_descriptors(MAX_REMOTE_DESCRIPTORS) != 0)
|
||||
{
|
||||
return -1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
pthread_t nDPId_thread;
|
||||
struct thread_return_value nDPId_return = {};
|
||||
if (pthread_create(&nDPId_thread, NULL, nDPId_mainloop_thread, &nDPId_return) != 0)
|
||||
{
|
||||
return -1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
pthread_t nDPIsrvd_thread;
|
||||
struct thread_return_value nDPIsrvd_return = {};
|
||||
if (pthread_create(&nDPIsrvd_thread, NULL, nDPIsrvd_mainloop_thread, &nDPIsrvd_return) != 0)
|
||||
{
|
||||
return -1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
pthread_t distributor_thread;
|
||||
struct thread_return_value distributor_return = {};
|
||||
if (pthread_create(&distributor_thread, NULL, distributor_client_mainloop_thread, &distributor_return) != 0)
|
||||
{
|
||||
return -1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* Try to gracefully shutdown all threads. */
|
||||
@@ -366,7 +371,7 @@ int main(int argc, char ** argv)
|
||||
{
|
||||
if (THREADS_RETURNED_ERROR() != 0)
|
||||
{
|
||||
return -1;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -374,7 +379,7 @@ int main(int argc, char ** argv)
|
||||
{
|
||||
if (THREADS_RETURNED_ERROR() != 0)
|
||||
{
|
||||
return -1;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -382,7 +387,7 @@ int main(int argc, char ** argv)
|
||||
{
|
||||
if (THREADS_RETURNED_ERROR() != 0)
|
||||
{
|
||||
return -1;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -879,19 +879,18 @@ int main(int argc, char ** argv)
|
||||
}
|
||||
|
||||
syslog(LOG_DAEMON, "collector listen on %s", nDPIsrvd_options.json_sockpath);
|
||||
syslog(LOG_DAEMON, "distributor listen on %s", nDPIsrvd_options.serv_optarg);
|
||||
switch (serv_address.raw.sa_family)
|
||||
{
|
||||
default:
|
||||
goto error;
|
||||
case AF_INET:
|
||||
case AF_INET6:
|
||||
syslog(LOG_DAEMON, "distributor listen on %s", nDPIsrvd_options.serv_optarg);
|
||||
syslog(LOG_DAEMON | LOG_ERR,
|
||||
"Please keep in mind that using a TCP Socket may leak sensitive information to "
|
||||
"everyone with access to the device/network. You've been warned!");
|
||||
break;
|
||||
case AF_UNIX:
|
||||
syslog(LOG_DAEMON, "distributor listen on %s", nDPIsrvd_options.json_sockpath);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -68,6 +68,12 @@ mkdir -p /tmp/nDPId-test-stderr
|
||||
set +e
|
||||
TESTS_FAILED=0
|
||||
|
||||
${nDPId_test_EXEC} -h 2>/dev/null
|
||||
if [ $? -ne 1 ]; then
|
||||
printf '%s\n' "nDPId-test: ${nDPId_test_EXEC} seems to be an invalid executable"
|
||||
exit 7
|
||||
fi
|
||||
|
||||
for pcap_file in $(ls *.pcap *.pcapng *.cap); do
|
||||
if file "${pcap_file}" | grep -qoE ':\s(pcap|pcap-ng) capture file'; then
|
||||
true # pass
|
||||
|
||||
Reference in New Issue
Block a user