Commit Graph

771 Commits

Author SHA1 Message Date
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
aeb6e6f536 Enable CURL in the CI.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-02-13 10:44:45 +01:00
Toni Uhlig
8af37b3770 Fix some SonarCloud complaints.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-02-13 07:21:47 +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
ea968180a2 Read Ipv6 address and netmask using getifaddrs() instead of reading /proc/net/if_inet6.
* fixes a compatibility issue with Mac OSX

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-02-07 14:25:14 +01:00
Toni Uhlig
556025b34d Removed API version macro check as it's inconsistent on different platforms.
* set min required nDPI version to 4.9.0

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2024-02-06 10:49:47 +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
88cf57a16f Added Grafana example dashboard image.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-20 19:19:08 +01:00
Toni Uhlig
7e81f5b1b7 Added Grafana nDPId dashboard.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-16 15:20:27 +01:00
Toni Uhlig
8acf2d7273 Improved InfluxDB push daemon.
* added proper gauge handling that enables pushing data w/o missing out
   anything e.g. short flows with a lifetime in-between two InfluxDB intervals

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-15 09:16:28 +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
fbe07fd882 Improved InfluxDB push daemon.
* fixed severity parsing and gauge handling
 * added flow state gauges
 * flow related gauges are only increased/decreased if a "new" event was seen (except for bytes xfer)

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-14 15:38:38 +01:00
Toni Uhlig
5432b06665 Improved InfluxDB push daemon.
* fixed missing flow active gauge
 * fixed invalid flow risk severity gauges
 * fixed missing flow risk gauges

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-11 23:14:00 +01:00
Toni Uhlig
142a435bf6 Add InfluxDB push daemon.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-07 10:00:25 +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
53d8a28582 Replaced ambiguous naming of "JSON string" to more accurate "JSON message".
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-04 13:01:27 +01:00
Toni Uhlig
37f3770e3e Improved zlib compression ratio.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-01 06:43:39 +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
ff77bab398 Warn about unused return values that are quite important.
* CI: ArchLinux build should now instrument `-Werror`
 * CI: Increased OpenWrt build verbosity

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-01 06:43:39 +01:00
Toni Uhlig
d274a06176 flow-info.py: Do not print any information if a flow is "empty" meaning no L4 payload seen so far.
* added JsonDecodeError to provide more information if builtin JSON decoder fails

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-12-01 06:43:39 +01:00
Paul Donald
a5dcc17396 Update README.md (#32)
Sp/gr. 

Co-authored-by: Toni <matzeton@googlemail.com>
2023-11-27 09:08:25 +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
830174c7b5 Fixed possible buffer underflow.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-20 17:52:30 +01:00
Toni Uhlig
bb9f02719d Added SonarCloud exclusions for third-party files and files lacking relevance.
* fixed two other "bugs"

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-20 14:51:59 +01:00
Toni Uhlig
f38f1ec37f Changed CI image from ubuntu-18.04 to ubuntu-20.04 as it is deprecated since '22.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-20 13:44:19 +01:00
Toni Uhlig
fa7e76cc75 Fixed SonarCloud complaints.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-20 13:40:48 +01:00
Toni Uhlig
b0c343a795 Workaround for libpap (<1.9.0) on Ubuntu-18.04
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-20 12:41:24 +01:00
Toni Uhlig
d5266b7f44 Support simple config file reading via systemd environment file.
* cfg file path defaults to PREFIX/etc/default/ndpid

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-20 12:27:40 +01:00
Toni Uhlig
82934b7271 Fixed clang-tidy warnings.
* fixed/improved c-captured logging

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-13 13:52:42 +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
55c8a848d3 Fixed missing deflate during flow event json serializing.
* caused by recently added serializing some nDPI data even packet processing is still ongoing

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-08 13:16:57 +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
b1e679b0bb Improved DBUS notification daemon.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-07 17:50:12 +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
5d56288a11 Fixed more SonarCloud complaints.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-07 00:02:36 +01:00
Toni Uhlig
84b12cd02c Fixed some SonarCloud complaints.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-06 13:31:59 +01:00
Toni
93498fff02 Apple/BSD port (#30)
* Add MacOS to Github CI builds.
* Fixed libnDPI-4.8 CI build.
* Fixed missing include for `struct sockaddr*`.
* Reworked IPv4 address and netmask retrieval.

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-06 13:25:49 +01:00
Toni
1b67927169 Event I/O abstraction layer. (#28)
* Finalize Event I/O abstraction layer.
* Fix possible fd leakage, Gitlab-CI build and error logging.
* Fixed possible uninitialized signalfd variable.
* Fixed possible memory leak.
* Fixed some SonarCloud complaints.
* Fixed nDPId-test nDPIsrvd-arpa-mockup stuck indefinitely.
* Add nDPId / nDPIsrvd command line option to use poll() on Linux instead of the default epoll().

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-06 12:38:15 +01:00
Toni Uhlig
17c21e1d27 Updated ToDo and added ChangeLog.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-05 16:00:47 +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
5335d84fe5 Add DBUS suspicious flow event notification daemon.
* nDPIsrvd.h: support for closing/resetting a nDPIsrvd_socket (required for a reconnect)

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-03 16:07:28 +01:00
Toni Uhlig
32ab500eb0 Bump werkzeug to 3.0.1
* see #29

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-11-02 14:15:06 +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
6ff8982ffb Fixed bug which may happen if additional write buffers are empty but main write buffer not.
* may cause nDPIsrvd to hang indefinitly if no more data received from a collector

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-10-19 13:40:44 +02:00