Commit Graph

786 Commits

Author SHA1 Message Date
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
Toni Uhlig
315dc32baf Improved syslog logging.
* fixed missing log level for non-error message, causes systemd to send broadcast messages
 * completly removed logging to stderr while started via systemd

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-10-19 13:38:26 +02:00
Toni Uhlig
3d0c06ef54 Disable SonarCloud Coverage generation.
* ToDo: Fix and Re-Enable?

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-10-18 22:48:44 +02:00
Toni Uhlig
8dca2b546a Added Coverage generation for SonarCloud.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-10-17 00:15:25 +02:00
Toni Uhlig
e134eef5bb Fixed Dockerfile related SonarCloud issues.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-10-16 20:38:54 +02:00
Toni Uhlig
d29efd4d7c Docker: Switched from Ubuntu 22.10 to 22.04 LTS.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-10-16 16:49:30 +02:00
Toni Uhlig
44adfc0b7d Sonarcloud integration
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-10-05 17:37:42 +02:00
Toni Uhlig
dfd0449306 Fix issues detected by SonarCloud.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-10-05 17:26:06 +02:00
Toni Uhlig
07f2c2d9cc nDPId-test: ingore event handler failures caused by arpa mockup
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-10-05 17:25:54 +02:00
Toni Uhlig
73b8c378f2 nDPId event I/O fixes.
* forcibly disable epoll even if available
 * nDPId-test event I/O selftest
 * CI event I/O tests

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-10-05 12:32:45 +02:00
Toni Uhlig
a0e0611c56 nDPIsrvd: Log error if collector unix socket can not be removed.
* systemd: add post stop hook to forcefully remove the collector unix socket

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-09-11 16:58:13 +02:00
Toni Uhlig
7f8e01d442 Fix CI.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-09-11 12:55:54 +02:00
Toni Uhlig
835a7bafb1 Fix CI.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-09-11 05:14:31 +02:00
Toni Uhlig
a7ac83385b Fix systemd CI test.
* CI Fix #3

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-09-10 22:16:44 +02:00
Toni Uhlig
0a0342ce28 c-captured: Log only flows w/o packet data to syslog if in logging mode.
* CI Fix #2

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-09-10 21:46:51 +02:00
Toni Uhlig
7515c1b072 Fix CI.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-09-10 20:28:11 +02:00
Toni Uhlig
be07c16c0e sklearn-random-forest.py: Pretty print false positive/negative.
* added max tree depth command line argument
 * print a note if loading an existing model while using --sklearn-* command line options

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-09-10 20:20:25 +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
96b0a8a474 Add event I/O abstraction.
* required to support non-Linux OS e.g. Mac OS X / BSD
 * see Github issue #19

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-09-10 19:11:58 +02:00
Toni Uhlig
091fd4d116 Added CMake option BUILD_NDPI_FORCE_GIT_UPDATE to fix broken submodule caches in GitLab CIs..
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-27 22:37:55 +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
a7bd3570b0 Enable custom JSON filter expressions for Python scripts.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-27 20:08:01 +02:00
Toni Uhlig
b01498f011 Fix some GCC-12 warnings.
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-27 12:49:39 +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
5234f4621b keras-autoencoder.py: TensorBoard, SGD optimizer, KLDivergence loss function, EarlyStopping
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-23 22:56:59 +02:00
Toni Uhlig
86ac09a8db keras-autoencoder.py: Improved Model
* added initial learning rate for Adam
 * plot some metrics using pyplot

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-20 23:05:08 +02:00
Toni Uhlig
4b3031245d keras-autoencoder.py: fixed invalid preprocessing of received base64 packet data
* split logic into seperate jobs; nDPIsrvd and Keras
 * nDPIsrvd: break event processing and re-run `epoll_wait()` after client disconnected

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-15 11:21:46 +02:00
Toni Uhlig
2b881d56e7 c-captured extension
* capture packets after error event occurred
 * add "logging" and "capture" mode

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-14 01:01:26 +02:00
Toni Uhlig
dd4357c238 CMake: install header files for experimental usage
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-05 01:15:48 +02:00
Toni Uhlig
7b15838696 Added docker build&push to the CI.
* update some git submodules

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-03 10:00:50 +02:00
Toni Uhlig
0e31829401 nDPId-test: threads should block all unix signals
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-02 23:34:10 +02:00
Toni Uhlig
d9f304e4b0 nDPId-test: print additional startup/init log messages
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-02 22:32:33 +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
79834df457 Removed CI matrix based jobs.
* Fixed multiple *.deb package upload issue.

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-08-02 18:21:37 +02:00
Toni Uhlig
4b923bdf44 py-flow-info: print flow src/dst packets
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-07-28 13:16:29 +02:00
Toni Uhlig
ba8236c1f7 py-flow-info: print flow src/dst bytes/packets
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-07-28 11:24:09 +02:00