Commit Graph

126 Commits

Author SHA1 Message Date
Toni Uhlig
9efdecf4ef bump libnDPI to 59ee1fe1156be234fed796972a29a31a0589e25a
* set minimum nDPI version to 4.12.0 (incompatible API changes)
 * fixed `ndpi_debug_printf()` function signature
 * JSON schema (flow): added risk `56`: "Obfuscated Traffic"
 * JSON schema (flow): added "domainame"
 * fixed OpenWrt build

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-11-13 17:23:31 +01:00
Toni Uhlig
f7933d0fdb Slightly unified C example's logging
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-11-05 12:48:36 +01:00
Toni Uhlig
2b48eb0514 Added vlan_id dissection of the most outer (first) 802.1Q header. Fixes #50
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-11-02 15:48:45 +01:00
Toni Uhlig
7b2cd268bf Updated JSON schema files and a test to make use of the UUID feature.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-10-29 15:25:19 +01:00
Toni Uhlig
5423797267 Added nDPId ndpi_process_packet() LLVM fuzzer
* replaced dumb `dumb_fuzzer.sh`
 * fixed nDPId NULL pointer deref found by fuzzer
 * nDPI: `--enable-debug-build` and `--enable-debug-messages` for non release builds
 * nDPI: do not force `log.level` to `3` anymore, use config value instead

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-10-24 15:45:04 +02:00
Toni Uhlig
7e126c205e Added additional (libnDPI) config files for test runs.
* redirect `run_tests.sh` stderr to filename which prepends config name

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-10-23 14:27:07 +02:00
Toni Uhlig
ae36f8df6c Added libnDPI global context init/deinit used for cache mgmt.
* support for adding *.ndpiconf for nDPI config tests
 * all other configs should have the suffix *.conf
 * fixed nDPI malloc/free wrapper set (was already too late set)

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-10-21 16:17:01 +02:00
Toni Uhlig
8c5ee1f7bb Added config testing script.
* nDPId-test may now make use of an optional config file as cmd arg

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-10-21 16:10:09 +02:00
Toni Uhlig
9969f955dc Updated ReadMe's, ToDo's and ChangeLog.
* 1.7-release

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-10-21 15:44:42 +02:00
Toni Uhlig
1c9aa85485 Save hostname after detection finished for later use within analyse/end/idle flow events. Fixes #39.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-09-11 13:01:23 +02:00
Toni Uhlig
aef9d629f0 bump libnDPI to 92507c014626bc542f2ab11c729742802c0bc345
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-09-09 09:29:08 +02:00
Toni
5e4005162b Add PF_RING support. (#38) 2024-08-19 18:33:18 +02:00
Toni Uhlig
930aaf9276 Added global (heap) memory stats for daemon status events.
* added new CMake option `ENABLE_MEMORY_STATUS` to restore the old behavior
   (and increase performance)
 * splitted `ENABLE_MEMORY_PROFILING` into `ENABLE_MEMORY_STATUS` and `ENABLE_MEMORY_PROFILING`

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-06-19 14:25:42 +02:00
Toni Uhlig
53126a0af9 bump libnDPI to 142c8f5afb90629762920db6703831826513e00b
* fixed `git format` hash length

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-04-10 16:06:53 +02:00
Toni Uhlig
15608bb571 bump libnDPI to 09bb383437c11ef55e926ed15cdf986c0d426827
* fixed "unused function" warning in `ndpi_bitmap64_fuse.c`

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-04-04 21:13:33 +02:00
Toni Uhlig
e93a4c9a81 bump libnDPI to df29e12f5efbe84306c1ee7c011a197caec6de50
* fixed "unused function" warning in `roaring.h`

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-04-04 19:33:34 +02:00
Toni Uhlig
b46f15de03 bump libnDPI to 6e61368cd609899048560405ad792705fffb1f1a
* fixed "unused function" warning in `gcrypt_light.c`

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-04-04 14:08:34 +02:00
Toni Uhlig
c7eace426c bump libnDPI to 9185c2ccc402d3368fc28ac90ab281b4f951719e
* incorporated API changes from 41eef9246c6a3055e3876e3dd7aeaadecb4b76c0

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-04-04 11:49:48 +02:00
Toni Uhlig
a487e53015 Added missing influxd test results.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-02-13 10:50:51 +01:00
Toni Uhlig
8949ba39e6 Added test mode for influx push daemon.
* required for regression testing
 * added new confidence value (match by custom rule)
 * updated / tweaked grafana exported dashboard

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-02-08 01:01:35 +01:00
Toni Uhlig
feb2583ef6 bump libnDPI to 4543385d107fcc5a7e8632e35d9a60bcc40cb4f4
* incorporated API changes from nDPI

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-02-06 10:34:52 +01:00
Toni Uhlig
7368f222db Fixed broken "not-detected" event/packet capture in captured example.
* aligned it with influxd example

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-01-29 18:11:34 +01:00
Toni Uhlig
a007a907da Fixed invalid flow risk aggregation in collectd/influxd examples.
* CI: build single nDPId executable with `-Wall -Wextra -std=gnu99`
 * fixed missing error events in influxd example
 * added additional test cases for collectd
 * extended grafana dashboard

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-01-06 19:32:47 +01:00
Toni Uhlig
876aef98e1 Improved collectd example.
* similiar behavior to influxd example
 * gauges and counters are now handled properly

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-01-05 11:26:53 +01:00
Toni Uhlig
71d933b0cd Fixed an event issue.
* a "detection-update" event was thrown even if nothing changed
 * in some cases "not-detected" events were spammed if detection not completed
 * tell `libnDPI` how many packets per flow we want to dissect
 * `nDPId-test` validates total active flows in the right way

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-14 15:45:08 +01:00
Toni Uhlig
f5c5bc88a7 Replaced ambiguous naming of "JSON string" to more accurate "JSON message". #2
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-04 13:13:05 +01:00
Toni Uhlig
7368d34d8d c-collectd: Fixed missing escape char.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-01 06:43:39 +01:00
Toni Uhlig
3416db11dc Updated ReadMe's, ToDo's and ChangeLog.
* 1.6-release

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-20 23:39:47 +01:00
Toni Uhlig
4920b2a4be Use c-captured within test/run_tests.sh.
* Some logging related modifications were required to achieve this.

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-11 19:16:07 +01:00
Toni Uhlig
8ebaccc27d py-flow-info: Improved analyse result printing.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-09 23:44:35 +01:00
Toni Uhlig
dcb595e161 bump libnDPI to b08c787fe267053afdea82701071f3878c09244b
* fix ndpi data anylsis struct min/max issue
 * py-flow-info cosmetics in printing some information

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-09 19:52:36 +01:00
Toni Uhlig
b667f9e1da Forcefully reset NDPI_UNIDIRECTIONAL_TRAFFIC if classification was done after the first packet. Nonsense.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-08 17:07:20 +01:00
Toni Uhlig
d80ea84d2e Reset Unidirectional Traffc risk if packets from both directions processed.
* Fixed risk hash value calculation, which was only done lower 32 bits.
 * Reduced default reader threads count to two if cross compiling.

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-08 01:27:42 +01:00
Toni Uhlig
949fc0c35e bump libnDPI to 0db12b1390b1cc554b927230c76b05264c05b498
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-07 00:35:42 +01:00
Toni Uhlig
5fb706e9a6 Set timeout for nDPId-test run's.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-03 16:38:58 +01:00
Toni Uhlig
e124f2d660 Switched to UNIX socket use for tests.
* use `ss` to make sure that the socket is not available anymore after every single test

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-10-20 00:25:59 +02:00
Toni Uhlig
e42e3fe406 Serialize nDPId / libnDPI versions within daemon events.
* changed nDPI version hints / requirements

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-09-10 19:32:08 +02:00
Toni Uhlig
dfb8d3379f bump libnDPI to 1f693c3f5a5dcd9d69dffb610b9a81bd33f95382
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-27 21:45:14 +02:00
Toni Uhlig
cc60e819e8 Fixed invalid base64 encoding in some rare cases.
* nDPId-test may also verify the correct encoding/decoding

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-24 22:51:57 +02:00
Toni Uhlig
ebb439d959 Tiny improvments.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-02 21:00:39 +02:00
Toni Uhlig
bc0a5782cc bump libnDPI to 2b230e28e0612e8654ad617534deb9aaaabd51b7
* fixes loading of gambling lists which increased nDPId's memory usage *a lot*
 * nDPId: handle EINTR correctly

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-07-23 18:43:58 +02:00
Toni Uhlig
c8ec505b9c bump libnDPI to 8ea0eaa0d0c4a3be05f67ef7fa1d22c2579cf7d1
* added build fix for Gitlab CI
 * added friendly C11 check
 * set required libnDPI versionto 4.7
   (ArchLinux ndpi-git sets version to 4.7, which is not released yet)
 * reduced sklearn-random-forest memory consumption by adjusting min. sample leaf

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-06-12 19:05:33 +02:00
lns
5a9b40779d bump libnDPI to 04f5c5196e790db8b8cc39e42c8645fb7f3dd141
* added custom nDPI logging callback

Signed-off-by: lns <matzeton@googlemail.com>
2023-05-30 09:30:24 +02:00
lns
8a936a5072 Fixed integer overflow for tcp timeout (>INT_MAX).
Signed-off-by: lns <matzeton@googlemail.com>
2023-05-26 11:17:38 +02:00
Toni Uhlig
c9514136b7 bump libnDPI to ...
* upstream changed regression test interface, needed to adapt
 * improved libnDPI helper build script
 * updated JSON schema

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-05-24 19:30:19 +02:00
Toni Uhlig
99accd03a2 Moved datalink json key/value from error to packet events and renamed it to pkt_datalink.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-04-21 16:48:40 +02:00
Toni Uhlig
a3d20c17d1 Improved collectd risk processing to be in sync with libnDPI risks.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-01-11 06:28:10 +01:00
Toni Uhlig
464450486b bump libnDPI to a944514ddec73f79704f55aab1423e39f4ce7a03
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-01-09 11:24:40 +01:00
Toni Uhlig
655393e953 nDPid: Fixed base64encode bug which lead to invalid base64 strings.
* py-semantic-validation: Decode base64 raw packet data as well
 * nDPIsrvd.py: Added PACKETS_PLEN_MAX
 * nDPIsrvd.py: Improved JSON parse error/exception handling

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-01-09 01:43:24 +01:00
Toni Uhlig
c5930e3510 Add collectd statistics diff test.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2022-12-06 19:51:53 +01:00