summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Added additional (minimalistic) detection information to flow updates.Toni Uhlig2022-02-04
| | | | | | | | | | | | | This will only affect flows with the state `FT_FINISHED' (detection done). * nDPIsrvd.py: force use of JSON schema Draft 7 validator * flow-dash.py: gather/use total processed layer4 payload size * flow-info.py: added additional event filter * flow-info.py: prettified flow events printing whose detection is in progress * py-semantic-validation.py: added validation checks for FT_FINISHED * updated flow event JSON schema Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Added logging interface used by nDPId, nDPIsrvd and nDPId-test.Toni Uhlig2022-02-03
| | | | | | | | | * fixed GitLab pipeline * nDPId: added static assert (just for a test) * nDPId: memory profiling for total bytes compressed * nDPId-test: enable zLib compression if configured with ENABLE_ZLIB Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Process additional layer 3 protocols.Toni Uhlig2022-01-31
| | | | | | | | | * bump libnDPI to c53c82d4823b5a8f856d1375155ac5112b68e8af * run_tests.sh: improved execution from non-git directories e.g. via `make dist` * updated JSON schema to be more restrictive * nDPId: splitted generic get_ip_from_sockaddr into IPv4/IPv6 to prevent compiler warnings on some platforms Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* nDPIsrvd: Fixed memory leak caused be not clearing buffer cache after a ↵Toni Uhlig2022-01-26
| | | | | | | | client disconnected. * README.md: Fixed a typ0 and added a meh image from examples/py-flow-dashboard/flow-dash.py Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* nDPId: Added some error messages when workflow init fails.Toni Uhlig2022-01-26
| | | | | | | * Fixed invalid array subscript typ0 (caused some trouble..) * bump libnDPI to 2cd0479204301c50c6149706fcd4df3058b2a8cc Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* py-flow-dashboard: added tab layout and event pie chartToni Uhlig2022-01-26
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Improved Plotly/Dash example. It is now somehow informative.Toni Uhlig2022-01-25
| | | | | | | * TCP timeout after FIN/RST: switched back to the value from a35fc1d5ea8570609cc0c8cf6edadc81f8f5bb76 * py-flow-info: reset 'guessed' flag after detection/detection-update received Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Major nDPId extension. Sorry for the huge commit.Toni Uhlig2022-01-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - nDPId: fixed invalid IP4/IP6 tuple compare - nDPIsrvd: fixed caching issue (finally) - added tiny c example (can be used to check flow manager sanity) - c-captured: use flow_last_seen timestamp from `struct nDPIsrvd_flow` - README.md update: added example JSON sequence - nDPId: added new flow event `update` necessary for correct timeout handling (and other future use-cases) - nDPIsrvd.h and nDPIsrvd.py: switched to an instance (consists of an alias/source tuple) based flow manager - every flow related event **must** now serialize `alias`, `source`, `flow_id`, `flow_last_seen` and `flow_idle_time` to make the timeout handling and verification process work correctly - nDPIsrvd.h: ability to profile any dynamic memory (de-)allocation - nDPIsrvd.py: removed PcapPacket class (unused) - py-flow-dashboard and py-flow-multiprocess: fixed race condition - py-flow-info: print statusbar with probably useful information - nDPId/nDPIsrvd.h: switched from packet-flow only timestamps (`pkt_*sec`) to a generic flow event timestamp `ts_msec` - nDPId-test: added additional checks - nDPId: increased ICMP flow timeout - nDPId: using event based i/o if capturing packets from a device - nDPIsrvd: fixed memory leak on shutdown if remote descriptors were still connected Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Removed py-flow-undetected-to-pcap and py-risky-flow-to-pcap. Done by ↵Toni Uhlig2021-11-21
| | | | | | c-captured anyway. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* go-dashboard renaming, ignore go-mod and it's file structureToni Uhlig2021-11-21
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Use blocking I/O to prevent data loss if nDPIsrvd too slow.Toni Uhlig2021-11-16
| | | | | | * Fixed MemoryProfiler stack overflow. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* MemoryProfiling: Advanced flow usage logging.Toni Uhlig2021-11-13
| | | | | | | | * nDPId-test: disable #include <syslog.h> if NO_MAIN macro defined * nDPId-test: mock syslog flags and functions * gitlab-ci: force -Werror Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* nDPId-test: Set max buffer size for remote descriptors useful to test ↵Toni Uhlig2021-11-04
| | | | | | caching/buffering. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Added timestamp validation test.Toni Uhlig2021-11-02
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Additional semantic validation tests.Toni Uhlig2021-11-02
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* c-captured: Improved format string in nDPIsrvd_write_flow_info_cb.Toni Uhlig2021-10-08
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Fixed compile error due to missing stdint.h include before ndpi_typedefs.hToni Uhlig2021-10-08
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Fixed invalid "flow_last_seen" timestamp for the first packet.Toni Uhlig2021-10-08
| | | | | | | | | | * After the first packet was processed, "flow_last_seen" was still 0. This behaviour is invalid as the first packet may contain l4 payload data e.g. for UDP and it also breaks nDPId json consistency "flow_first_seen" > 0, but "flow_last_seen" == 0. * JSON schema: set minimum timestamp value for Epoch timestamps to 24710 for flow_*_seen and 1 for pcap packet ts. Those values are dependant on some manipulated pcap's in libnDPI/tests/pcap. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Added support/debug function to write flow(-user) related info.Toni Uhlig2021-10-08
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* bump libnDPI to 181a03c5ad41bda533fbfa307627939c2ff30b75Toni Uhlig2021-10-05
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* More CMake warnings/errors/fixes added.Toni Uhlig2021-09-29
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* CMake and CI extensionsToni Uhlig2021-09-29
| | | | | | | * CPack support for debian packages * Use CPack version string for nDPId Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* dumb fuzzer: randpkt vs nDPId-testToni Uhlig2021-09-20
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* CI extended and fixupsToni Uhlig2021-09-19
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Github Actions integrationToni Uhlig2021-09-17
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Removed Travis-CI support as they do not support OpenSource anymore.Toni Uhlig2021-09-16
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Fixed some typ0's and reduced ICMP timeout to 10s.Toni Uhlig2021-09-16
| | | | | | | * nDPId: Renamed some of the misleading terms, still TODO for nDPIsrvd * CMake improvments Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Merge commit '1fa53c5bf8d0717f784c79abaa5111f88ab00221'Toni Uhlig2021-09-15
|\
| * Squashed 'dependencies/uthash/' changes from 8e67ced..bf15263Toni Uhlig2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bf15263 Fix a "bug" in the example where option 3 interfered with option 1's counter. b6e24ef Use `malloc(sizeof *s)` in example code. a109c6b Stop using `gets` in example.c. c85c9e1 fix: fix utstack example's compiling error 86e6776 Replace *.github.com urls with *.github.io (#227) e493aa9 Bump version to 2.3.0. ae2ac52 Fix README.md to display the *actual* TravisCI status. 134e241 Silence -Wswitch-default warnings, and add it to the TravisCI config. 62fefa6 Fix some typos in userguide.txt, and re-remove spaces in macro definitions. 37d2021 tests: add whitespaces to example code 524ca1a doc: add whitespaces to documentation 0f6c619 Fix a typo in the documentation for HASH_COUNT. NFC. 388134a Rename uthash_memcmp to HASH_KEYCMP, step 3. 053bed1 Eliminate HASH_FCN; change the handling of HASH_FUNCTION to match HASH_KEYCMP. f0e1bd9 Refactor test93.c to avoid scan-build warnings. 45af88c Remove two dead writes in tests, to silence scan-build warnings. 66e2668 Bump version to 2.2.0. 973bd67 uthash.h: Swap multiplicands to put the widest ones first. 15ad042 Always include <stdint.h>, unless HASH_NO_STDINT is defined by the user. 6b4768b Rename uthash_memcmp to HASH_KEYCMP, step 2. e64c7f0 Update tests/README to describe the most recently added tests. NFC. c62796c HASH_CLEAR after some tests, to eliminate "memory leak" warnings. 7f0aadb Support spaces in $exe path 0831d9a uthash.h: fix compiler warning -Wcast-qual ba2fbfd utarray.h: preserve constness in utarray_str_cpy git-subtree-dir: dependencies/uthash git-subtree-split: bf15263081be6229be31addd48566df93921cb46
* | Merge commit '8e096b19c1e0b45ccd43cc89d9d80b59bd783529'Toni Uhlig2021-09-15
|\ \
| * | Squashed 'dependencies/jsmn/' changes from 053d3cd..1aa2e8fToni Uhlig2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | 1aa2e8f Update README.md (#203) b85f161 Update README.md (#213) 23f13d2 Merge pull request #108 from olmokramer/patch-1 git-subtree-dir: dependencies/jsmn git-subtree-split: 1aa2e8f80849c983466b165d53542da9b1bd1b32
* | | nDPIsrvd: Fixed anther bug, introduced during refactoring -_-Toni Uhlig2021-09-15
| | | | | | | | | | | | | | | | | | nDPId-test: Collect information about JSON string length's. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | README.md ascii updateToni Uhlig2021-09-14
| | | | | | | | | | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | fixed Warnings / build error / cosmeticsToni Uhlig2021-09-14
| | | | | | | | | | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | bump libnDPI to 0eb7a0388c4549ebbf8cd7a10d398088005cc2deToni Uhlig2021-09-14
| | | | | | | | | | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | Improved and Fixed another buffering issue caused by removing an outgoing fd ↵Toni Uhlig2021-08-05
| | | | | | | | | | | | | | | | | | too early from epoll queue (EPOLLOUT). Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | Improved nDPIsrvd buffer bloat handling using caching.Toni Uhlig2021-08-04
| | | | | | | | | | | | | | | | | | | | | * still allow blocking mode (with send timeout) * improved daemon start/stop test script Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | Gitlab-CIToni Uhlig2021-08-03
| | | | | | | | | | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | bump libnDPI to 6b7e5fa8d251f11c1bae16ea892a43a92b098480Toni Uhlig2021-08-03
| | | | | | | | | | | | | | | | | | | | | | | | * fixed linking issue by using CMake to check if explicit link against libm required * make nDPIsrvd collectd exit if parent pid changed, meaning that collectd died somehow * nDPId-test restores SIGPIPE to the default handler (termination), so abnormal connection drop's do now have consequences Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | bump libnDPI to b95bd0358fd43d9fdfdc5266e3c8923b91e1d4dbToni Uhlig2021-07-14
| | | | | | | | | | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | Build JSMN with support for parent links.Toni Uhlig2021-07-13
| | | | | | | | | | | | | | | | | | | | | * nDPIsrvd.h: iterate over subtokens * nDPIsrvd-captured: select/ unselect risky flows to capture Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | bump libnDPI to ced6fca184a4549333c2d582e53419f66cd99ec1Toni Uhlig2021-06-29
| | | | | | | | | | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | Updated CMake nDPId-test target;Toni Uhlig2021-06-18
| | | | | | | | | | | | | | | | | | | | | * w/o zLib * gcrypt requires to be enabled Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | Enable memory profiling for nDPId-test.Toni Uhlig2021-06-18
| | | | | | | | | | | | | | | | | | * print a summary Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | Added zLib compression parameters to control compression conditions.Toni Uhlig2021-06-16
| | | | | | | | | | | | | | | | | | | | | | | | * more structs are now "compressable" * fixed missing DAEMON_RECONNECT event * improved memory profiler Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | Support for zLib flow memory compression. Experimental.Toni Uhlig2021-06-14
| | | | | | | | | | | | | | | | | | | | | Please use this feature only for testing purposes. It will change or be removed in the future. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | Removed setting CC, CFLAGS and LDFLAGS explicitly for libnDPI build ↵Toni Uhlig2021-06-09
| | | | | | | | | | | | | | | | | | | | | | | | (BUILD_NDPI=ON). * for xcompile targets e.g. for OpenWrt, this env vars are already set Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | libndpi updateToni Uhlig2021-06-09
| | | | | | | | | | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | Trying to fix BUILD_NDPI for xcompilation.Toni Uhlig2021-06-09
| | | | | | | | | | | | | | | | | | * added a CMake warning as well Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* | | Generate a valid version tuple if build was triggered from an unpacked `make ↵Toni Uhlig2021-06-08
| | | | | | | | | | | | | | | | | | dist` archive. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>