From 7aee856aa063f7861be7e7fe2970ba014391d9bf Mon Sep 17 00:00:00 2001 From: Ivan Nardi <12729895+IvanNardi@users.noreply.github.com> Date: Wed, 9 Mar 2022 22:37:35 +0100 Subject: Extend tests coverage (#1476) Now there is at least one flow under `tests/pcap` for 249 protocols out of the 284 ones supported by nDPI. The 35 protocols without any tests are: * P2P/sharing protocols: DIRECT_DOWNLOAD_LINK, OPENFT, FASTTRACK, EDONKEY, SOPCAST, THUNDER, APPLEJUICE, DIRECTCONNECT, STEALTHNET * games: CSGO, HALFLIFE2, ARMAGETRON, CROSSFIRE, DOFUS, FIESTA, FLORENSIA, GUILDWARS, MAPLESTORY, WORLD_OF_KUNG_FU * voip/streaming: VHUA, ICECAST, SHOUTCAST, TVUPLAYER, TRUPHONE * other: AYIYA, SOAP, TARGUS_GETDATA, RPC, ZMQ, REDIS, VMWARE, NOE, LOTUS_NOTES, EGP, SAP Most of these protocols (expecially the P2P and games ones) have been inherited by OpenDPI and have not been updated since then: even if they are still used, the detection rules might be outdated. However code coverage (of `lib/protocols`) only increases from 65.6% to 68.9%. Improve Citrix, Corba, Fix, Aimini, Megaco, PPStream, SNMP and Some/IP dissection. Treat IPP as a HTTP sub protocol. Fix Cassandra false positives. Remove `NDPI_PROTOCOL_QQLIVE` and `NDPI_PROTOCOL_REMOTE_SCAN`: these protocol ids are defined but they are never used. Remove Collectd support: its code has never been called. If someone is really interested in this protocol, we can re-add it later, updating the dissector. Add decoding of PPI (Per-Packet Information) data link type. --- src/include/ndpi_protocol_ids.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/include/ndpi_protocol_ids.h') diff --git a/src/include/ndpi_protocol_ids.h b/src/include/ndpi_protocol_ids.h index cebb75b04..7e8611f03 100644 --- a/src/include/ndpi_protocol_ids.h +++ b/src/include/ndpi_protocol_ids.h @@ -89,7 +89,7 @@ typedef enum { NDPI_PROTOCOL_DISCORD = 58, NDPI_PROTOCOL_TVUPLAYER = 59, NDPI_PROTOCOL_MONGODB = 60, - NDPI_PROTOCOL_QQLIVE = 61, + NDPI_PROTOCOL_FREE_61 = 61, /* FREE */ NDPI_PROTOCOL_THUNDER = 62, NDPI_PROTOCOL_OCSP = 63, NDPI_PROTOCOL_VXLAN = 64, @@ -183,7 +183,7 @@ typedef enum { NDPI_PROTOCOL_GTP = 152, NDPI_PROTOCOL_WSD = 153, NDPI_PROTOCOL_LLMNR = 154, - NDPI_PROTOCOL_REMOTE_SCAN = 155, + NDPI_PROTOCOL_FREE_155 = 155, /* FREE */ NDPI_PROTOCOL_SPOTIFY = 156, NDPI_PROTOCOL_MESSENGER = 157, NDPI_PROTOCOL_H323 = 158, @@ -199,7 +199,7 @@ typedef enum { NDPI_PROTOCOL_CORBA = 168, NDPI_PROTOCOL_UBUNTUONE = 169, NDPI_PROTOCOL_WHOIS_DAS = 170, - NDPI_PROTOCOL_COLLECTD = 171, + NDPI_PROTOCOL_FREE_171 = 171, /* FREE */ NDPI_PROTOCOL_SOCKS = 172, NDPI_PROTOCOL_NINTENDO = 173, NDPI_PROTOCOL_RTMP = 174, -- cgit v1.2.3