The ndpi_network_list_compile tool has been moved to the utils/ folder.

This commit is contained in:
Vitaly Lavrov 2026-01-14 11:30:56 +03:00
parent e47f3d78c1
commit 19e85f2eff
6 changed files with 51 additions and 823 deletions

4
.gitignore vendored
View file

@ -199,8 +199,8 @@
/src/lib/Makefile.in
/test-driver
/tests/Makefile
/src/lib/ndpi_network_list_compile
/src/lib/ndpi_network_list.c.inc
/utils/ndpi_network_list_compile
/utils/ndpi_network_list_compile.h
/tests/dga/Makefile
/tests/do.sh
/tests/unit/Makefile

View file

@ -1,795 +0,0 @@
#define NDPI_LAST_IMPLEMENTED_PROTOCOL 469
const char *proto_def[NDPI_LAST_IMPLEMENTED_PROTOCOL+1] = {
_P(NDPI_PROTOCOL_UNKNOWN),
_P(NDPI_PROTOCOL_FTP_CONTROL),
_P(NDPI_PROTOCOL_MAIL_POP),
_P(NDPI_PROTOCOL_MAIL_SMTP),
_P(NDPI_PROTOCOL_MAIL_IMAP),
_P(NDPI_PROTOCOL_DNS),
_P(NDPI_PROTOCOL_IPP),
_P(NDPI_PROTOCOL_HTTP),
_P(NDPI_PROTOCOL_MDNS),
_P(NDPI_PROTOCOL_NTP),
_P(NDPI_PROTOCOL_NETBIOS),
_P(NDPI_PROTOCOL_NFS),
_P(NDPI_PROTOCOL_SSDP),
_P(NDPI_PROTOCOL_BGP),
_P(NDPI_PROTOCOL_SNMP),
_P(NDPI_PROTOCOL_XDMCP),
_P(NDPI_PROTOCOL_SMBV1),
_P(NDPI_PROTOCOL_SYSLOG),
_P(NDPI_PROTOCOL_DHCP),
_P(NDPI_PROTOCOL_POSTGRES),
_P(NDPI_PROTOCOL_MYSQL),
_P(NDPI_PROTOCOL_MS_OUTLOOK),
_P(NDPI_PROTOCOL_VK),
_P(NDPI_PROTOCOL_MAIL_POPS),
_P(NDPI_PROTOCOL_TAILSCALE),
_P(NDPI_PROTOCOL_YANDEX),
_P(NDPI_PROTOCOL_NTOP),
_P(NDPI_PROTOCOL_COAP),
_P(NDPI_PROTOCOL_VMWARE),
_P(NDPI_PROTOCOL_MAIL_SMTPS),
_P(NDPI_PROTOCOL_DTLS),
_P(NDPI_PROTOCOL_UBNTAC2),
_P(NDPI_PROTOCOL_BFCP),
_P(NDPI_PROTOCOL_YANDEX_MAIL),
_P(NDPI_PROTOCOL_YANDEX_MUSIC),
_P(NDPI_PROTOCOL_GNUTELLA),
_P(NDPI_PROTOCOL_EDONKEY),
_P(NDPI_PROTOCOL_BITTORRENT),
_P(NDPI_PROTOCOL_MSTEAMS_CALL),
_P(NDPI_PROTOCOL_SIGNAL),
_P(NDPI_PROTOCOL_MEMCACHED),
_P(NDPI_PROTOCOL_SMBV23),
_P(NDPI_PROTOCOL_MINING),
_P(NDPI_PROTOCOL_NEST_LOG_SINK),
_P(NDPI_PROTOCOL_MODBUS),
_P(NDPI_PROTOCOL_WHATSAPP_CALL),
_P(NDPI_PROTOCOL_DATASAVER),
_P(NDPI_PROTOCOL_XBOX),
_P(NDPI_PROTOCOL_QQ),
_P(NDPI_PROTOCOL_TIKTOK),
_P(NDPI_PROTOCOL_RTSP),
_P(NDPI_PROTOCOL_MAIL_IMAPS),
_P(NDPI_PROTOCOL_ICECAST),
_P(NDPI_PROTOCOL_CPHA),
_P(NDPI_PROTOCOL_IQIYI),
_P(NDPI_PROTOCOL_ZATTOO),
_P(NDPI_PROTOCOL_YANDEX_MARKET),
_P(NDPI_PROTOCOL_YANDEX_DISK),
_P(NDPI_PROTOCOL_DISCORD),
_P(NDPI_PROTOCOL_ADOBE_CONNECT),
_P(NDPI_PROTOCOL_MONGODB),
_P(NDPI_PROTOCOL_PLURALSIGHT),
_P(NDPI_PROTOCOL_YANDEX_CLOUD),
_P(NDPI_PROTOCOL_OCSP),
_P(NDPI_PROTOCOL_VXLAN),
_P(NDPI_PROTOCOL_IRC),
_P(NDPI_PROTOCOL_MERAKI_CLOUD),
_P(NDPI_PROTOCOL_JABBER),
_P(NDPI_PROTOCOL_NATS),
_P(NDPI_PROTOCOL_AMONG_US),
_P(NDPI_PROTOCOL_YAHOO),
_P(NDPI_PROTOCOL_DISNEYPLUS),
_P(NDPI_PROTOCOL_HART_IP),
_P(NDPI_PROTOCOL_IP_VRRP),
_P(NDPI_PROTOCOL_STEAM),
_P(NDPI_PROTOCOL_MELSEC),
_P(NDPI_PROTOCOL_WORLDOFWARCRAFT),
_P(NDPI_PROTOCOL_TELNET),
_P(NDPI_PROTOCOL_STUN),
_P(NDPI_PROTOCOL_IPSEC),
_P(NDPI_PROTOCOL_IP_GRE),
_P(NDPI_PROTOCOL_IP_ICMP),
_P(NDPI_PROTOCOL_IP_IGMP),
_P(NDPI_PROTOCOL_IP_EGP),
_P(NDPI_PROTOCOL_IP_SCTP),
_P(NDPI_PROTOCOL_IP_OSPF),
_P(NDPI_PROTOCOL_IP_IP_IN_IP),
_P(NDPI_PROTOCOL_RTP),
_P(NDPI_PROTOCOL_RDP),
_P(NDPI_PROTOCOL_VNC),
_P(NDPI_PROTOCOL_TUMBLR),
_P(NDPI_PROTOCOL_TLS),
_P(NDPI_PROTOCOL_SSH),
_P(NDPI_PROTOCOL_USENET),
_P(NDPI_PROTOCOL_MGCP),
_P(NDPI_PROTOCOL_IAX),
_P(NDPI_PROTOCOL_TFTP),
_P(NDPI_PROTOCOL_AFP),
_P(NDPI_PROTOCOL_YANDEX_METRIKA),
_P(NDPI_PROTOCOL_YANDEX_DIRECT),
_P(NDPI_PROTOCOL_SIP),
_P(NDPI_PROTOCOL_TRUPHONE),
_P(NDPI_PROTOCOL_IP_ICMPV6),
_P(NDPI_PROTOCOL_DHCPV6),
_P(NDPI_PROTOCOL_ARMAGETRON),
_P(NDPI_PROTOCOL_CROSSFIRE),
_P(NDPI_PROTOCOL_DOFUS),
_P(NDPI_PROTOCOL_BLACKNUT),
_P(NDPI_PROTOCOL_BOOSTEROID),
_P(NDPI_PROTOCOL_GUILDWARS2),
_P(NDPI_PROTOCOL_AMAZON_ALEXA),
_P(NDPI_PROTOCOL_KERBEROS),
_P(NDPI_PROTOCOL_LDAP),
_P(NDPI_PROTOCOL_NEXON),
_P(NDPI_PROTOCOL_MSSQL_TDS),
_P(NDPI_PROTOCOL_PPTP),
_P(NDPI_PROTOCOL_IP_AH),
_P(NDPI_PROTOCOL_IP_ESP),
_P(NDPI_PROTOCOL_SLACK),
_P(NDPI_PROTOCOL_FACEBOOK),
_P(NDPI_PROTOCOL_TWITTER),
_P(NDPI_PROTOCOL_DROPBOX),
_P(NDPI_PROTOCOL_GMAIL),
_P(NDPI_PROTOCOL_GOOGLE_MAPS),
_P(NDPI_PROTOCOL_YOUTUBE),
_P(NDPI_PROTOCOL_MOZILLA),
_P(NDPI_PROTOCOL_GOOGLE),
_P(NDPI_PROTOCOL_MS_RPCH),
_P(NDPI_PROTOCOL_NETFLOW),
_P(NDPI_PROTOCOL_SFLOW),
_P(NDPI_PROTOCOL_HTTP_CONNECT),
_P(NDPI_PROTOCOL_HTTP_PROXY),
_P(NDPI_PROTOCOL_CITRIX),
_P(NDPI_PROTOCOL_NETFLIX),
_P(NDPI_PROTOCOL_LASTFM),
_P(NDPI_PROTOCOL_WAZE),
_P(NDPI_PROTOCOL_YOUTUBE_UPLOAD),
_P(NDPI_PROTOCOL_HULU),
_P(NDPI_PROTOCOL_CHECKMK),
_P(NDPI_PROTOCOL_AJP),
_P(NDPI_PROTOCOL_APPLE),
_P(NDPI_PROTOCOL_WEBEX),
_P(NDPI_PROTOCOL_WHATSAPP),
_P(NDPI_PROTOCOL_APPLE_ICLOUD),
_P(NDPI_PROTOCOL_VIBER),
_P(NDPI_PROTOCOL_APPLE_ITUNES),
_P(NDPI_PROTOCOL_RADIUS),
_P(NDPI_PROTOCOL_WINDOWS_UPDATE),
_P(NDPI_PROTOCOL_TEAMVIEWER),
_P(NDPI_PROTOCOL_EGD),
_P(NDPI_PROTOCOL_HCL_NOTES),
_P(NDPI_PROTOCOL_SAP),
_P(NDPI_PROTOCOL_GTP),
_P(NDPI_PROTOCOL_WSD),
_P(NDPI_PROTOCOL_LLMNR),
_P(NDPI_PROTOCOL_TOCA_BOCA),
_P(NDPI_PROTOCOL_SPOTIFY),
_P(NDPI_PROTOCOL_FACEBOOK_MESSENGER),
_P(NDPI_PROTOCOL_H323),
_P(NDPI_PROTOCOL_OPENVPN),
_P(NDPI_PROTOCOL_NOE),
_P(NDPI_PROTOCOL_CISCOVPN),
_P(NDPI_PROTOCOL_TEAMSPEAK),
_P(NDPI_PROTOCOL_TOR),
_P(NDPI_PROTOCOL_SKINNY),
_P(NDPI_PROTOCOL_RTCP),
_P(NDPI_PROTOCOL_RSYNC),
_P(NDPI_PROTOCOL_ORACLE),
_P(NDPI_PROTOCOL_CORBA),
_P(NDPI_PROTOCOL_CANONICAL),
_P(NDPI_PROTOCOL_WHOIS_DAS),
_P(NDPI_PROTOCOL_SD_RTN),
_P(NDPI_PROTOCOL_SOCKS),
_P(NDPI_PROTOCOL_NINTENDO),
_P(NDPI_PROTOCOL_RTMP),
_P(NDPI_PROTOCOL_FTP_DATA),
_P(NDPI_PROTOCOL_WIKIPEDIA),
_P(NDPI_PROTOCOL_ZMQ),
_P(NDPI_PROTOCOL_AMAZON),
_P(NDPI_PROTOCOL_EBAY),
_P(NDPI_PROTOCOL_CNN),
_P(NDPI_PROTOCOL_MEGACO),
_P(NDPI_PROTOCOL_RESP),
_P(NDPI_PROTOCOL_PINTEREST),
_P(NDPI_PROTOCOL_OSPF),
_P(NDPI_PROTOCOL_TELEGRAM),
_P(NDPI_PROTOCOL_COD_MOBILE),
_P(NDPI_PROTOCOL_PANDORA),
_P(NDPI_PROTOCOL_QUIC),
_P(NDPI_PROTOCOL_ZOOM),
_P(NDPI_PROTOCOL_EAQ),
_P(NDPI_PROTOCOL_OOKLA),
_P(NDPI_PROTOCOL_AMQP),
_P(NDPI_PROTOCOL_KAKAOTALK),
_P(NDPI_PROTOCOL_KAKAOTALK_VOICE),
_P(NDPI_PROTOCOL_TWITCH),
_P(NDPI_PROTOCOL_DOH_DOT),
_P(NDPI_PROTOCOL_WECHAT),
_P(NDPI_PROTOCOL_MPEGTS),
_P(NDPI_PROTOCOL_SNAPCHAT),
_P(NDPI_PROTOCOL_SINA),
_P(NDPI_PROTOCOL_GOOGLE_MEET),
_P(NDPI_PROTOCOL_IFLIX),
_P(NDPI_PROTOCOL_GITHUB),
_P(NDPI_PROTOCOL_BJNP),
_P(NDPI_PROTOCOL_REDDIT),
_P(NDPI_PROTOCOL_WIREGUARD),
_P(NDPI_PROTOCOL_SMPP),
_P(NDPI_PROTOCOL_DNSCRYPT),
_P(NDPI_PROTOCOL_TINC),
_P(NDPI_PROTOCOL_DEEZER),
_P(NDPI_PROTOCOL_INSTAGRAM),
_P(NDPI_PROTOCOL_MICROSOFT),
_P(NDPI_PROTOCOL_BLIZZARD),
_P(NDPI_PROTOCOL_TEREDO),
_P(NDPI_PROTOCOL_HOTSPOT_SHIELD),
_P(NDPI_PROTOCOL_IMO),
_P(NDPI_PROTOCOL_GOOGLE_DRIVE),
_P(NDPI_PROTOCOL_OCS),
_P(NDPI_PROTOCOL_MICROSOFT_365),
_P(NDPI_PROTOCOL_CLOUDFLARE),
_P(NDPI_PROTOCOL_MS_ONE_DRIVE),
_P(NDPI_PROTOCOL_MQTT),
_P(NDPI_PROTOCOL_RX),
_P(NDPI_PROTOCOL_APPLESTORE),
_P(NDPI_PROTOCOL_OPENDNS),
_P(NDPI_PROTOCOL_GIT),
_P(NDPI_PROTOCOL_DRDA),
_P(NDPI_PROTOCOL_PLAYSTORE),
_P(NDPI_PROTOCOL_SOMEIP),
_P(NDPI_PROTOCOL_FIX),
_P(NDPI_PROTOCOL_PLAYSTATION),
_P(NDPI_PROTOCOL_PASTEBIN),
_P(NDPI_PROTOCOL_LINKEDIN),
_P(NDPI_PROTOCOL_SOUNDCLOUD),
_P(NDPI_PROTOCOL_VALVE_SDR),
_P(NDPI_PROTOCOL_LISP),
_P(NDPI_PROTOCOL_DIAMETER),
_P(NDPI_PROTOCOL_APPLE_PUSH),
_P(NDPI_PROTOCOL_GOOGLE_SERVICES),
_P(NDPI_PROTOCOL_AMAZON_VIDEO),
_P(NDPI_PROTOCOL_GOOGLE_DOCS),
_P(NDPI_PROTOCOL_WHATSAPP_FILES),
_P(NDPI_PROTOCOL_TARGUS_GETDATA),
_P(NDPI_PROTOCOL_DNP3),
_P(NDPI_PROTOCOL_IEC60870),
_P(NDPI_PROTOCOL_BLOOMBERG),
_P(NDPI_PROTOCOL_CAPWAP),
_P(NDPI_PROTOCOL_ZABBIX),
_P(NDPI_PROTOCOL_S7COMM),
_P(NDPI_PROTOCOL_MSTEAMS),
_P(NDPI_PROTOCOL_WEBSOCKET),
_P(NDPI_PROTOCOL_ANYDESK),
_P(NDPI_PROTOCOL_SOAP),
_P(NDPI_PROTOCOL_APPLE_SIRI),
_P(NDPI_PROTOCOL_SNAPCHAT_CALL),
_P(NDPI_PROTOCOL_HPVIRTGRP),
_P(NDPI_PROTOCOL_GENSHIN_IMPACT),
_P(NDPI_PROTOCOL_ACTIVISION),
_P(NDPI_PROTOCOL_FORTICLIENT),
_P(NDPI_PROTOCOL_Z3950),
_P(NDPI_PROTOCOL_LIKEE),
_P(NDPI_PROTOCOL_GITLAB),
_P(NDPI_PROTOCOL_AVAST_SECUREDNS),
_P(NDPI_PROTOCOL_CASSANDRA),
_P(NDPI_PROTOCOL_AMAZON_AWS),
_P(NDPI_PROTOCOL_SALESFORCE),
_P(NDPI_PROTOCOL_VIMEO),
_P(NDPI_PROTOCOL_FACEBOOK_VOIP),
_P(NDPI_PROTOCOL_SIGNAL_VOIP),
_P(NDPI_PROTOCOL_FUZE),
_P(NDPI_PROTOCOL_GTP_U),
_P(NDPI_PROTOCOL_GTP_C),
_P(NDPI_PROTOCOL_GTP_PRIME),
_P(NDPI_PROTOCOL_ALIBABA),
_P(NDPI_PROTOCOL_CRASHLYSTICS),
_P(NDPI_PROTOCOL_MICROSOFT_AZURE),
_P(NDPI_PROTOCOL_ICLOUD_PRIVATE_RELAY),
_P(NDPI_PROTOCOL_ETHERNET_IP),
_P(NDPI_PROTOCOL_BADOO),
_P(NDPI_PROTOCOL_ACCUWEATHER),
_P(NDPI_PROTOCOL_GOOGLE_CLASSROOM),
_P(NDPI_PROTOCOL_HSRP),
_P(NDPI_PROTOCOL_CYBERSECURITY),
_P(NDPI_PROTOCOL_GOOGLE_CLOUD),
_P(NDPI_PROTOCOL_TENCENT),
_P(NDPI_PROTOCOL_RAKNET),
_P(NDPI_PROTOCOL_XIAOMI),
_P(NDPI_PROTOCOL_EDGECAST),
_P(NDPI_PROTOCOL_CACHEFLY),
_P(NDPI_PROTOCOL_SOFTETHER),
_P(NDPI_PROTOCOL_MPEGDASH),
_P(NDPI_PROTOCOL_DAZN),
_P(NDPI_PROTOCOL_GOTO),
_P(NDPI_PROTOCOL_RSH),
_P(NDPI_PROTOCOL_1KXUN),
_P(NDPI_PROTOCOL_IP_PGM),
_P(NDPI_PROTOCOL_IP_PIM),
_P(NDPI_PROTOCOL_COLLECTD),
_P(NDPI_PROTOCOL_TUNNELBEAR),
_P(NDPI_PROTOCOL_CLOUDFLARE_WARP),
_P(NDPI_PROTOCOL_I3D),
_P(NDPI_PROTOCOL_RIOTGAMES),
_P(NDPI_PROTOCOL_PSIPHON),
_P(NDPI_PROTOCOL_ULTRASURF),
_P(NDPI_PROTOCOL_THREEMA),
_P(NDPI_PROTOCOL_ALICLOUD),
_P(NDPI_PROTOCOL_AVAST),
_P(NDPI_PROTOCOL_TIVOCONNECT),
_P(NDPI_PROTOCOL_KISMET),
_P(NDPI_PROTOCOL_FASTCGI),
_P(NDPI_PROTOCOL_FTPS),
_P(NDPI_PROTOCOL_NATPMP),
_P(NDPI_PROTOCOL_SYNCTHING),
_P(NDPI_PROTOCOL_CRYNET),
_P(NDPI_PROTOCOL_LINE),
_P(NDPI_PROTOCOL_LINE_CALL),
_P(NDPI_PROTOCOL_APPLETVPLUS),
_P(NDPI_PROTOCOL_DIRECTV),
_P(NDPI_PROTOCOL_HBO),
_P(NDPI_PROTOCOL_VUDU),
_P(NDPI_PROTOCOL_SHOWTIME),
_P(NDPI_PROTOCOL_DAILYMOTION),
_P(NDPI_PROTOCOL_LIVESTREAM),
_P(NDPI_PROTOCOL_TENCENTVIDEO),
_P(NDPI_PROTOCOL_IHEARTRADIO),
_P(NDPI_PROTOCOL_TIDAL),
_P(NDPI_PROTOCOL_TUNEIN),
_P(NDPI_PROTOCOL_SIRIUSXMRADIO),
_P(NDPI_PROTOCOL_MUNIN),
_P(NDPI_PROTOCOL_ELASTICSEARCH),
_P(NDPI_PROTOCOL_TUYA_LP),
_P(NDPI_PROTOCOL_TPLINK_SHP),
_P(NDPI_PROTOCOL_SOURCE_ENGINE),
_P(NDPI_PROTOCOL_BACNET),
_P(NDPI_PROTOCOL_OICQ),
_P(NDPI_PROTOCOL_HOTS),
_P(NDPI_PROTOCOL_FACEBOOK_REEL_STORY),
_P(NDPI_PROTOCOL_SRTP),
_P(NDPI_PROTOCOL_OPERA_VPN),
_P(NDPI_PROTOCOL_EPICGAMES),
_P(NDPI_PROTOCOL_GEFORCENOW),
_P(NDPI_PROTOCOL_NVIDIA),
_P(NDPI_PROTOCOL_BITCOIN),
_P(NDPI_PROTOCOL_PROTONVPN),
_P(NDPI_PROTOCOL_APACHE_THRIFT),
_P(NDPI_PROTOCOL_ROBLOX),
_P(NDPI_PROTOCOL_SERVICE_LOCATION),
_P(NDPI_PROTOCOL_MULLVAD),
_P(NDPI_PROTOCOL_HTTP2),
_P(NDPI_PROTOCOL_HAPROXY),
_P(NDPI_PROTOCOL_RMCP),
_P(NDPI_PROTOCOL_CAN),
_P(NDPI_PROTOCOL_PROTOBUF),
_P(NDPI_PROTOCOL_ETHEREUM),
_P(NDPI_PROTOCOL_TELEGRAM_VOIP),
_P(NDPI_PROTOCOL_SINA_WEIBO),
_P(NDPI_PROTOCOL_TESLA_SERVICES),
_P(NDPI_PROTOCOL_PTPV2),
_P(NDPI_PROTOCOL_RTPS),
_P(NDPI_PROTOCOL_OPC_UA),
_P(NDPI_PROTOCOL_S7COMM_PLUS),
_P(NDPI_PROTOCOL_FINS),
_P(NDPI_PROTOCOL_ETHERSIO),
_P(NDPI_PROTOCOL_UMAS),
_P(NDPI_PROTOCOL_BECKHOFF_ADS),
_P(NDPI_PROTOCOL_ISO9506_1_MMS),
_P(NDPI_PROTOCOL_IEEE_C37118),
_P(NDPI_PROTOCOL_ETHERSBUS),
_P(NDPI_PROTOCOL_MONERO),
_P(NDPI_PROTOCOL_DCERPC),
_P(NDPI_PROTOCOL_PROFINET_IO),
_P(NDPI_PROTOCOL_HISLIP),
_P(NDPI_PROTOCOL_UFTP),
_P(NDPI_PROTOCOL_OPENFLOW),
_P(NDPI_PROTOCOL_JSON_RPC),
_P(NDPI_PROTOCOL_WEBDAV),
_P(NDPI_PROTOCOL_APACHE_KAFKA),
_P(NDPI_PROTOCOL_NOMACHINE),
_P(NDPI_PROTOCOL_IEC62056),
_P(NDPI_PROTOCOL_HL7),
_P(NDPI_PROTOCOL_CEPH),
_P(NDPI_PROTOCOL_GOOGLE_CHAT),
_P(NDPI_PROTOCOL_ROUGHTIME),
_P(NDPI_PROTOCOL_PIA),
_P(NDPI_PROTOCOL_KCP),
_P(NDPI_PROTOCOL_DOTA2),
_P(NDPI_PROTOCOL_MUMBLE),
_P(NDPI_PROTOCOL_YOJIMBO),
_P(NDPI_PROTOCOL_ELECTRONICARTS),
_P(NDPI_PROTOCOL_STOMP),
_P(NDPI_PROTOCOL_RADMIN),
_P(NDPI_PROTOCOL_RAFT),
_P(NDPI_PROTOCOL_CIP),
_P(NDPI_PROTOCOL_GEARMAN),
_P(NDPI_PROTOCOL_TENCENTGAMES),
_P(NDPI_PROTOCOL_GAIJIN),
_P(NDPI_PROTOCOL_C1222),
_P(NDPI_PROTOCOL_HUAWEI),
_P(NDPI_PROTOCOL_HUAWEI_CLOUD),
_P(NDPI_PROTOCOL_DLEP),
_P(NDPI_PROTOCOL_BFD),
_P(NDPI_PROTOCOL_NETEASE_GAMES),
_P(NDPI_PROTOCOL_PATHOFEXILE),
_P(NDPI_PROTOCOL_GOOGLE_CALL),
_P(NDPI_PROTOCOL_PFCP),
_P(NDPI_PROTOCOL_FLUTE),
_P(NDPI_PROTOCOL_LOLWILDRIFT),
_P(NDPI_PROTOCOL_TESO),
_P(NDPI_PROTOCOL_LDP),
_P(NDPI_PROTOCOL_KNXNET_IP),
_P(NDPI_PROTOCOL_BLUESKY),
_P(NDPI_PROTOCOL_MASTODON),
_P(NDPI_PROTOCOL_THREADS),
_P(NDPI_PROTOCOL_VIBER_VOIP),
_P(NDPI_PROTOCOL_ZUG),
_P(NDPI_PROTOCOL_JRMI),
_P(NDPI_PROTOCOL_RIPE_ATLAS),
_P(NDPI_PROTOCOL_HLS),
_P(NDPI_PROTOCOL_CLICKHOUSE),
_P(NDPI_PROTOCOL_NANO),
_P(NDPI_PROTOCOL_OPENWIRE),
_P(NDPI_PROTOCOL_CNP_IP),
_P(NDPI_PROTOCOL_ATG),
_P(NDPI_PROTOCOL_TRDP),
_P(NDPI_PROTOCOL_LUSTRE),
_P(NDPI_PROTOCOL_NORDVPN),
_P(NDPI_PROTOCOL_SURFSHARK),
_P(NDPI_PROTOCOL_CACTUSVPN),
_P(NDPI_PROTOCOL_WINDSCRIBE),
_P(NDPI_PROTOCOL_SONOS),
_P(NDPI_PROTOCOL_DINGTALK),
_P(NDPI_PROTOCOL_PALTALK),
_P(NDPI_PROTOCOL_NAVER),
_P(NDPI_PROTOCOL_SHEIN),
_P(NDPI_PROTOCOL_TEMU),
_P(NDPI_PROTOCOL_TAOBAO),
_P(NDPI_PROTOCOL_MIKROTIK),
_P(NDPI_PROTOCOL_DICOM),
_P(NDPI_PROTOCOL_PARAMOUNTPLUS),
_P(NDPI_PROTOCOL_YANDEX_ALICE),
_P(NDPI_PROTOCOL_VIVOX),
_P(NDPI_PROTOCOL_DIGITALOCEAN),
_P(NDPI_PROTOCOL_RUTUBE),
_P(NDPI_PROTOCOL_LAGOFAST),
_P(NDPI_PROTOCOL_GEARUP_BOOSTER),
_P(NDPI_PROTOCOL_RUMBLE),
_P(NDPI_PROTOCOL_UBIQUITY),
_P(NDPI_PROTOCOL_MSDO),
_P(NDPI_PROTOCOL_ROCKSTAR_GAMES),
_P(NDPI_PROTOCOL_KICK),
_P(NDPI_PROTOCOL_HAMACHI),
_P(NDPI_PROTOCOL_GLBP),
_P(NDPI_PROTOCOL_EASYWEATHER),
_P(NDPI_PROTOCOL_MUDFISH),
_P(NDPI_PROTOCOL_TRISTATION),
_P(NDPI_PROTOCOL_SAMSUNG_SDP),
_P(NDPI_PROTOCOL_MATTER),
_P(NDPI_PROTOCOL_AWS_COGNITO),
_P(NDPI_PROTOCOL_AWS_API_GATEWAY),
_P(NDPI_PROTOCOL_AWS_KINESIS),
_P(NDPI_PROTOCOL_AWS_EC2),
_P(NDPI_PROTOCOL_AWS_EMR),
_P(NDPI_PROTOCOL_AWS_S3),
_P(NDPI_PROTOCOL_AWS_CLOUDFRONT),
_P(NDPI_PROTOCOL_AWS_DYNAMODB),
_P(NDPI_PROTOCOL_ESPN),
_P(NDPI_PROTOCOL_AKAMAI),
_P(NDPI_PROTOCOL_JSON),
_P(NDPI_PROTOCOL_MSGPACK)
};
#include "inc_generated/ndpi_akamai_match.c.inc"
#include "inc_generated/ndpi_amazon_aws_api_gateway_match.c.inc"
#include "inc_generated/ndpi_amazon_aws_cloudfront_match.c.inc"
#include "inc_generated/ndpi_amazon_aws_dynamodb_match.c.inc"
#include "inc_generated/ndpi_amazon_aws_ec2_match.c.inc"
#include "inc_generated/ndpi_amazon_aws_kinesis_match.c.inc"
#include "inc_generated/ndpi_amazon_aws_match.c.inc"
#include "inc_generated/ndpi_amazon_aws_s3_match.c.inc"
#include "inc_generated/ndpi_asn_alibaba.c.inc"
#include "inc_generated/ndpi_asn_apple.c.inc"
#include "inc_generated/ndpi_asn_avast.c.inc"
#include "inc_generated/ndpi_asn_badoo.c.inc"
#include "inc_generated/ndpi_asn_blizzard.c.inc"
#include "inc_generated/ndpi_asn_bloomberg.c.inc"
#include "inc_generated/ndpi_asn_canonical.c.inc"
#include "inc_generated/ndpi_asn_discord.c.inc"
#include "inc_generated/ndpi_asn_disney_plus.c.inc"
#include "inc_generated/ndpi_asn_dropbox.c.inc"
#include "inc_generated/ndpi_asn_edgecast.c.inc"
#include "inc_generated/ndpi_asn_epicgames.c.inc"
#include "inc_generated/ndpi_asn_facebook.c.inc"
#include "inc_generated/ndpi_asn_github.c.inc"
#include "inc_generated/ndpi_asn_goto.c.inc"
#include "inc_generated/ndpi_asn_hotspotshield.c.inc"
#include "inc_generated/ndpi_asn_hulu.c.inc"
#include "inc_generated/ndpi_asn_imo.c.inc"
#include "inc_generated/ndpi_asn_line.c.inc"
#include "inc_generated/ndpi_asn_netflix.c.inc"
#include "inc_generated/ndpi_asn_nvidia.c.inc"
#include "inc_generated/ndpi_asn_opendns.c.inc"
#include "inc_generated/ndpi_asn_riotgames.c.inc"
#include "inc_generated/ndpi_asn_roblox.c.inc"
#include "inc_generated/ndpi_asn_steam.c.inc"
#include "inc_generated/ndpi_asn_teamviewer.c.inc"
#include "inc_generated/ndpi_asn_telegram.c.inc"
#include "inc_generated/ndpi_asn_tencent.c.inc"
#include "inc_generated/ndpi_asn_threema.c.inc"
#include "inc_generated/ndpi_asn_twitch.c.inc"
#include "inc_generated/ndpi_asn_twitter.c.inc"
#include "inc_generated/ndpi_asn_vk.c.inc"
#include "inc_generated/ndpi_asn_webex.c.inc"
#include "inc_generated/ndpi_asn_yandex.c.inc"
#include "inc_generated/ndpi_asn_yandex_cloud.c.inc"
#include "inc_generated/ndpi_azure_match.c.inc"
#include "inc_generated/ndpi_cachefly_match.c.inc"
#include "inc_generated/ndpi_cloudflare_match.c.inc"
#include "inc_generated/ndpi_digitalocean_match.c.inc"
#include "inc_generated/ndpi_ethereum_match.c.inc"
#include "inc_generated/ndpi_google_cloud_match.c.inc"
#include "inc_generated/ndpi_google_match.c.inc"
#include "inc_generated/ndpi_icloud_private_relay_match.c.inc"
#include "inc_generated/ndpi_ms_office365_match.c.inc"
#include "inc_generated/ndpi_ms_onedrive_match.c.inc"
#include "inc_generated/ndpi_ms_outlook_match.c.inc"
#include "inc_generated/ndpi_msteams_match.c.inc"
#include "inc_generated/ndpi_mullvad_match.c.inc"
#include "inc_generated/ndpi_nordvpn_match.c.inc"
#include "inc_generated/ndpi_surfshark_match.c.inc"
#include "inc_generated/ndpi_tor_exit_nodes_match.c.inc"
#include "inc_generated/ndpi_tor_match.c.inc"
#include "inc_generated/ndpi_whatsapp_match.c.inc"
#include "inc_generated/ndpi_zoom_match.c.inc"
static ndpi_network * ip4list[] = {
&ndpi_protocol_akamai_protocol_list[0],
&ndpi_protocol_aws_api_gateway_protocol_list[0],
&ndpi_protocol_aws_cloudfront_protocol_list[0],
&ndpi_protocol_aws_dynamodb_protocol_list[0],
&ndpi_protocol_aws_ec2_protocol_list[0],
&ndpi_protocol_aws_kinesis_protocol_list[0],
&ndpi_protocol_amazon_aws_protocol_list[0],
&ndpi_protocol_aws_s3_protocol_list[0],
&ndpi_protocol_alibaba_protocol_list[0],
&ndpi_protocol_apple_protocol_list[0],
&ndpi_protocol_avast_protocol_list[0],
&ndpi_protocol_badoo_protocol_list[0],
&ndpi_protocol_blizzard_protocol_list[0],
&ndpi_protocol_bloomberg_protocol_list[0],
&ndpi_protocol_canonical_protocol_list[0],
&ndpi_protocol_discord_protocol_list[0],
&ndpi_protocol_disneyplus_protocol_list[0],
&ndpi_protocol_dropbox_protocol_list[0],
&ndpi_protocol_edgecast_protocol_list[0],
&ndpi_protocol_epicgames_protocol_list[0],
&ndpi_protocol_facebook_protocol_list[0],
&ndpi_protocol_github_protocol_list[0],
&ndpi_protocol_goto_protocol_list[0],
&ndpi_protocol_hotspot_shield_protocol_list[0],
&ndpi_protocol_hulu_protocol_list[0],
&ndpi_protocol_imo_protocol_list[0],
&ndpi_protocol_line_protocol_list[0],
&ndpi_protocol_netflix_protocol_list[0],
&ndpi_protocol_nvidia_protocol_list[0],
&ndpi_protocol_opendns_protocol_list[0],
&ndpi_protocol_riotgames_protocol_list[0],
&ndpi_protocol_roblox_protocol_list[0],
&ndpi_protocol_steam_protocol_list[0],
&ndpi_protocol_teamviewer_protocol_list[0],
&ndpi_protocol_telegram_protocol_list[0],
&ndpi_protocol_tencent_protocol_list[0],
&ndpi_protocol_threema_protocol_list[0],
&ndpi_protocol_twitch_protocol_list[0],
&ndpi_protocol_twitter_protocol_list[0],
&ndpi_protocol_vk_protocol_list[0],
&ndpi_protocol_webex_protocol_list[0],
&ndpi_protocol_yandex_protocol_list[0],
&ndpi_protocol_yandex_cloud_protocol_list[0],
&ndpi_protocol_microsoft_azure_protocol_list[0],
&ndpi_protocol_cachefly_protocol_list[0],
&ndpi_protocol_cloudflare_protocol_list[0],
&ndpi_protocol_digitalocean_protocol_list[0],
&ndpi_protocol_ethereum_protocol_list[0],
&ndpi_protocol_google_cloud_protocol_list[0],
&ndpi_protocol_google_protocol_list[0],
&ndpi_anonymous_subscriber_icloud_private_relay_protocol_list[0],
&ndpi_protocol_microsoft_365_protocol_list[0],
&ndpi_protocol_ms_one_drive_protocol_list[0],
&ndpi_protocol_ms_outlook_protocol_list[0],
&ndpi_protocol_msteams_protocol_list[0],
&ndpi_protocol_mullvad_protocol_list[0],
&ndpi_protocol_nordvpn_protocol_list[0],
&ndpi_protocol_surfshark_protocol_list[0],
&ndpi_anonymous_subscriber_tor_exit_nodes_protocol_list[0],
&ndpi_protocol_tor_protocol_list[0],
&ndpi_protocol_whatsapp_protocol_list[0],
&ndpi_protocol_zoom_protocol_list[0]
};
static char * ip4list_file[] = {
"inc_generated/ndpi_akamai_match.c.inc",
"inc_generated/ndpi_amazon_aws_api_gateway_match.c.inc",
"inc_generated/ndpi_amazon_aws_cloudfront_match.c.inc",
"inc_generated/ndpi_amazon_aws_dynamodb_match.c.inc",
"inc_generated/ndpi_amazon_aws_ec2_match.c.inc",
"inc_generated/ndpi_amazon_aws_kinesis_match.c.inc",
"inc_generated/ndpi_amazon_aws_match.c.inc",
"inc_generated/ndpi_amazon_aws_s3_match.c.inc",
"inc_generated/ndpi_asn_alibaba.c.inc",
"inc_generated/ndpi_asn_apple.c.inc",
"inc_generated/ndpi_asn_avast.c.inc",
"inc_generated/ndpi_asn_badoo.c.inc",
"inc_generated/ndpi_asn_blizzard.c.inc",
"inc_generated/ndpi_asn_bloomberg.c.inc",
"inc_generated/ndpi_asn_canonical.c.inc",
"inc_generated/ndpi_asn_discord.c.inc",
"inc_generated/ndpi_asn_disney_plus.c.inc",
"inc_generated/ndpi_asn_dropbox.c.inc",
"inc_generated/ndpi_asn_edgecast.c.inc",
"inc_generated/ndpi_asn_epicgames.c.inc",
"inc_generated/ndpi_asn_facebook.c.inc",
"inc_generated/ndpi_asn_github.c.inc",
"inc_generated/ndpi_asn_goto.c.inc",
"inc_generated/ndpi_asn_hotspotshield.c.inc",
"inc_generated/ndpi_asn_hulu.c.inc",
"inc_generated/ndpi_asn_imo.c.inc",
"inc_generated/ndpi_asn_line.c.inc",
"inc_generated/ndpi_asn_netflix.c.inc",
"inc_generated/ndpi_asn_nvidia.c.inc",
"inc_generated/ndpi_asn_opendns.c.inc",
"inc_generated/ndpi_asn_riotgames.c.inc",
"inc_generated/ndpi_asn_roblox.c.inc",
"inc_generated/ndpi_asn_steam.c.inc",
"inc_generated/ndpi_asn_teamviewer.c.inc",
"inc_generated/ndpi_asn_telegram.c.inc",
"inc_generated/ndpi_asn_tencent.c.inc",
"inc_generated/ndpi_asn_threema.c.inc",
"inc_generated/ndpi_asn_twitch.c.inc",
"inc_generated/ndpi_asn_twitter.c.inc",
"inc_generated/ndpi_asn_vk.c.inc",
"inc_generated/ndpi_asn_webex.c.inc",
"inc_generated/ndpi_asn_yandex.c.inc",
"inc_generated/ndpi_asn_yandex_cloud.c.inc",
"inc_generated/ndpi_azure_match.c.inc",
"inc_generated/ndpi_cachefly_match.c.inc",
"inc_generated/ndpi_cloudflare_match.c.inc",
"inc_generated/ndpi_digitalocean_match.c.inc",
"inc_generated/ndpi_ethereum_match.c.inc",
"inc_generated/ndpi_google_cloud_match.c.inc",
"inc_generated/ndpi_google_match.c.inc",
"inc_generated/ndpi_icloud_private_relay_match.c.inc",
"inc_generated/ndpi_ms_office365_match.c.inc",
"inc_generated/ndpi_ms_onedrive_match.c.inc",
"inc_generated/ndpi_ms_outlook_match.c.inc",
"inc_generated/ndpi_msteams_match.c.inc",
"inc_generated/ndpi_mullvad_match.c.inc",
"inc_generated/ndpi_nordvpn_match.c.inc",
"inc_generated/ndpi_surfshark_match.c.inc",
"inc_generated/ndpi_tor_exit_nodes_match.c.inc",
"inc_generated/ndpi_tor_match.c.inc",
"inc_generated/ndpi_whatsapp_match.c.inc",
"inc_generated/ndpi_zoom_match.c.inc"
};
static ndpi_network6 * ip6list[] = {
&ndpi_protocol_akamai_protocol_list_6[0],
&ndpi_protocol_aws_api_gateway_protocol_list_6[0],
&ndpi_protocol_aws_cloudfront_protocol_list_6[0],
&ndpi_protocol_aws_dynamodb_protocol_list_6[0],
&ndpi_protocol_aws_ec2_protocol_list_6[0],
&ndpi_protocol_aws_kinesis_protocol_list_6[0],
&ndpi_protocol_amazon_aws_protocol_list_6[0],
&ndpi_protocol_aws_s3_protocol_list_6[0],
&ndpi_protocol_alibaba_protocol_list_6[0],
&ndpi_protocol_apple_protocol_list_6[0],
&ndpi_protocol_avast_protocol_list_6[0],
&ndpi_protocol_badoo_protocol_list_6[0],
&ndpi_protocol_blizzard_protocol_list_6[0],
&ndpi_protocol_bloomberg_protocol_list_6[0],
&ndpi_protocol_canonical_protocol_list_6[0],
&ndpi_protocol_discord_protocol_list_6[0],
&ndpi_protocol_disneyplus_protocol_list_6[0],
&ndpi_protocol_dropbox_protocol_list_6[0],
&ndpi_protocol_edgecast_protocol_list_6[0],
&ndpi_protocol_epicgames_protocol_list_6[0],
&ndpi_protocol_facebook_protocol_list_6[0],
&ndpi_protocol_github_protocol_list_6[0],
&ndpi_protocol_goto_protocol_list_6[0],
&ndpi_protocol_hotspot_shield_protocol_list_6[0],
&ndpi_protocol_hulu_protocol_list_6[0],
&ndpi_protocol_imo_protocol_list_6[0],
&ndpi_protocol_line_protocol_list_6[0],
&ndpi_protocol_netflix_protocol_list_6[0],
&ndpi_protocol_nvidia_protocol_list_6[0],
&ndpi_protocol_opendns_protocol_list_6[0],
&ndpi_protocol_riotgames_protocol_list_6[0],
&ndpi_protocol_roblox_protocol_list_6[0],
&ndpi_protocol_steam_protocol_list_6[0],
&ndpi_protocol_teamviewer_protocol_list_6[0],
&ndpi_protocol_telegram_protocol_list_6[0],
&ndpi_protocol_tencent_protocol_list_6[0],
&ndpi_protocol_threema_protocol_list_6[0],
&ndpi_protocol_twitch_protocol_list_6[0],
&ndpi_protocol_twitter_protocol_list_6[0],
&ndpi_protocol_vk_protocol_list_6[0],
&ndpi_protocol_webex_protocol_list_6[0],
&ndpi_protocol_yandex_protocol_list_6[0],
&ndpi_protocol_yandex_cloud_protocol_list_6[0],
&ndpi_protocol_microsoft_azure_protocol_list_6[0],
&ndpi_protocol_cachefly_protocol_list_6[0],
&ndpi_protocol_cloudflare_protocol_list_6[0],
&ndpi_protocol_digitalocean_protocol_list_6[0],
&ndpi_protocol_ethereum_protocol_list_6[0],
&ndpi_protocol_google_cloud_protocol_list_6[0],
&ndpi_protocol_google_protocol_list_6[0],
&ndpi_anonymous_subscriber_icloud_private_relay_protocol_list_6[0],
&ndpi_protocol_microsoft_365_protocol_list_6[0],
&ndpi_protocol_ms_one_drive_protocol_list_6[0],
&ndpi_protocol_ms_outlook_protocol_list_6[0],
&ndpi_protocol_msteams_protocol_list_6[0],
&ndpi_protocol_mullvad_protocol_list_6[0],
&ndpi_protocol_nordvpn_protocol_list_6[0],
&ndpi_protocol_surfshark_protocol_list_6[0],
&ndpi_anonymous_subscriber_tor_exit_nodes_protocol_list_6[0],
&ndpi_protocol_tor_protocol_list_6[0],
&ndpi_protocol_whatsapp_protocol_list_6[0],
&ndpi_protocol_zoom_protocol_list_6[0]
};
static char * ip6list_file[] = {
"inc_generated/ndpi_akamai_match.c.inc",
"inc_generated/ndpi_amazon_aws_api_gateway_match.c.inc",
"inc_generated/ndpi_amazon_aws_cloudfront_match.c.inc",
"inc_generated/ndpi_amazon_aws_dynamodb_match.c.inc",
"inc_generated/ndpi_amazon_aws_ec2_match.c.inc",
"inc_generated/ndpi_amazon_aws_kinesis_match.c.inc",
"inc_generated/ndpi_amazon_aws_match.c.inc",
"inc_generated/ndpi_amazon_aws_s3_match.c.inc",
"inc_generated/ndpi_asn_alibaba.c.inc",
"inc_generated/ndpi_asn_apple.c.inc",
"inc_generated/ndpi_asn_avast.c.inc",
"inc_generated/ndpi_asn_badoo.c.inc",
"inc_generated/ndpi_asn_blizzard.c.inc",
"inc_generated/ndpi_asn_bloomberg.c.inc",
"inc_generated/ndpi_asn_canonical.c.inc",
"inc_generated/ndpi_asn_discord.c.inc",
"inc_generated/ndpi_asn_disney_plus.c.inc",
"inc_generated/ndpi_asn_dropbox.c.inc",
"inc_generated/ndpi_asn_edgecast.c.inc",
"inc_generated/ndpi_asn_epicgames.c.inc",
"inc_generated/ndpi_asn_facebook.c.inc",
"inc_generated/ndpi_asn_github.c.inc",
"inc_generated/ndpi_asn_goto.c.inc",
"inc_generated/ndpi_asn_hotspotshield.c.inc",
"inc_generated/ndpi_asn_hulu.c.inc",
"inc_generated/ndpi_asn_imo.c.inc",
"inc_generated/ndpi_asn_line.c.inc",
"inc_generated/ndpi_asn_netflix.c.inc",
"inc_generated/ndpi_asn_nvidia.c.inc",
"inc_generated/ndpi_asn_opendns.c.inc",
"inc_generated/ndpi_asn_riotgames.c.inc",
"inc_generated/ndpi_asn_roblox.c.inc",
"inc_generated/ndpi_asn_steam.c.inc",
"inc_generated/ndpi_asn_teamviewer.c.inc",
"inc_generated/ndpi_asn_telegram.c.inc",
"inc_generated/ndpi_asn_tencent.c.inc",
"inc_generated/ndpi_asn_threema.c.inc",
"inc_generated/ndpi_asn_twitch.c.inc",
"inc_generated/ndpi_asn_twitter.c.inc",
"inc_generated/ndpi_asn_vk.c.inc",
"inc_generated/ndpi_asn_webex.c.inc",
"inc_generated/ndpi_asn_yandex.c.inc",
"inc_generated/ndpi_asn_yandex_cloud.c.inc",
"inc_generated/ndpi_azure_match.c.inc",
"inc_generated/ndpi_cachefly_match.c.inc",
"inc_generated/ndpi_cloudflare_match.c.inc",
"inc_generated/ndpi_digitalocean_match.c.inc",
"inc_generated/ndpi_ethereum_match.c.inc",
"inc_generated/ndpi_google_cloud_match.c.inc",
"inc_generated/ndpi_google_match.c.inc",
"inc_generated/ndpi_icloud_private_relay_match.c.inc",
"inc_generated/ndpi_ms_office365_match.c.inc",
"inc_generated/ndpi_ms_onedrive_match.c.inc",
"inc_generated/ndpi_ms_outlook_match.c.inc",
"inc_generated/ndpi_msteams_match.c.inc",
"inc_generated/ndpi_mullvad_match.c.inc",
"inc_generated/ndpi_nordvpn_match.c.inc",
"inc_generated/ndpi_surfshark_match.c.inc",
"inc_generated/ndpi_tor_exit_nodes_match.c.inc",
"inc_generated/ndpi_tor_match.c.inc",
"inc_generated/ndpi_whatsapp_match.c.inc",
"inc_generated/ndpi_zoom_match.c.inc"
};

View file

@ -1,8 +0,0 @@
#!/bin/bash
#
perl nlist.pl
perl gen_proto_list.pl
gcc -O2 -I. -I../include -Ithird_party/include -o ndpi_network_list_compile \
ndpi_network_list_compile.c

View file

@ -12,7 +12,7 @@
#include "ndpi_api.h"
#include "third_party/src/ndpi_patricia.c"
#include "../src/lib/third_party/src/ndpi_patricia.c"
#define _P(a) [a] = #a
@ -349,8 +349,8 @@ int main(int argc,char **argv) {
}
for(size_t h=0; h < sizeof(ip4list)/sizeof(ip4list[0]); h++) {
ndpi_network *ip4l = ip4list[h];
int ml;
for(;ip4l->network;ip4l++) {
int ml,nna;
for(nna = 1;ip4l->network;ip4l++,nna++) {
pin.v4.s_addr = htonl(ip4l->network);
ml = ip4l->cidr;
protocol = ip4l->value;
@ -366,12 +366,14 @@ int main(int argc,char **argv) {
node = ndpi_patricia_search_best(ptree, &prefix);
if(verbose) {
fprintf(stderr,"ADD4 %-40s %s:%d\n",prefix_str(&prefix,protocol,lbuf2,sizeof lbuf2),ip4list_file[h],nna);
if(node && node->prefix && protocol != node->value.u.uv32.user_value &&
ml <= node->prefix->bitlen) {
fprintf(stderr,"%-40s != %s\n",
fprintf(stderr,"%-40s != %s %s:%d\n",
prefix_str(&prefix,protocol,lbuf2,sizeof lbuf2),
prefix_str(node->prefix,node->value.u.uv32.user_value,lbuf,sizeof lbuf)
prefix_str(node->prefix,node->value.u.uv32.user_value,lbuf,sizeof lbuf),
ip4list_file[h],nna
);
}
}
@ -383,8 +385,8 @@ int main(int argc,char **argv) {
for(size_t h=0; h < sizeof(ip6list)/sizeof(ip6list[0]); h++) {
ndpi_network6 *ip6l = ip6list[h];
int ml;
for(;ip6l->network;ip6l++) {
int ml,nna;
for(nna = 1;ip6l->network;ip6l++,nna++) {
ip6len += strlen(ip6l->network);
ip6cnt ++;
if(inet_pton(AF_INET6,ip6l->network,&pin.v6) != 1) abort();
@ -404,12 +406,14 @@ int main(int argc,char **argv) {
node = ndpi_patricia_search_best(ptree6, &prefix);
if(verbose) {
fprintf(stderr,"ADD6 %-40s\n",prefix_str(&prefix,protocol,lbuf2,sizeof lbuf2),ip6list_file[h],nna);
if(node && node->prefix && protocol != node->value.u.uv32.user_value &&
ml <= node->prefix->bitlen) {
fprintf(stderr,"%-40s != %s\n",
fprintf(stderr,"%-40s != %s %s:%d\n",
prefix_str(&prefix,protocol,lbuf2,sizeof lbuf2),
prefix_str(node->prefix,node->value.u.uv32.user_value,lbuf,sizeof lbuf)
prefix_str(node->prefix,node->value.u.uv32.user_value,lbuf,sizeof lbuf),
ip6list_file[h],nna
);
}
}

View file

@ -0,0 +1,7 @@
#!/bin/bash
#
perl ndpi_network_list_compile_gen.pl
gcc -O2 -I. -I../src/include -I../src/lib/third_party/include -o ndpi_network_list_compile \
ndpi_network_list_compile.c

View file

@ -5,16 +5,31 @@ my @P;
my %N;
my $m=0;
my ($n,$p);
my (%L);
die "BUG2" if !open(F,'<ndpi_main.c');
my (%L,%SL);
die "BUG2" if !open(F,'<../src/lib/ndpi_main.c');
while(<F>) {
next if !/ndpi_init_ptree_ipv/;
next if !/ndpi_init_ptree_ipv[46]/;
$L{$1} = 1 if /^\s+ndpi_init_ptree_ipv4\s*\(\s*ndpi_str->protocols->v4,\s*(ndpi_[a-z-0-9_]+)\s*\)/;
$L{$1} = 1 if /^\s+ndpi_init_ptree_ipv6\s*\(\s*ndpi_str,\s*ndpi_str->protocols->v6,\s*(ndpi_[a-z-0-9_]+)\s*\)/;
next if /static void ndpi_init_ptree_ipv/ || /, host_protocol_list/;
if( /ndpi_str->ip_risk->v[46],\s*(ndpi_[a-z-0-9_]+)/) {
print STDERR "SKIP '$1' $_";
$SL{$1} = 1;
next;
}
if(/^\s+ndpi_init_ptree_ipv4\s*\(\s*ndpi_str->protocols->v4,\s*(ndpi_[a-z-0-9_]+)\s*\)/) {
$L{$1} = 1;
print STDERR "Found4 $1\n";
next;
}
if(/^\s+ndpi_init_ptree_ipv6\s*\(\s*ndpi_str,\s*ndpi_str->protocols->v6,\s*(ndpi_[a-z-0-9_]+)\s*\)/) {
$L{$1} = 1;
print STDERR "Found6 $1\n";
next;
}
die "ndpi_init_ptree_ipv ",$_;
}
close(F);
die "BUG1" if !open(F,'<../include/ndpi_protocol_ids.h');
die "BUG1" if !open(F,'<../src/include/ndpi_protocol_ids.h');
while(<F>) {
next if !/^\s*NDPI_(CONTENT|SERVICE|PROTOCOL)_(\S+)\s*=\s*(\d+)\s*,/;
@ -29,18 +44,23 @@ while(<F>) {
$P[$n]=$p;
$N{$p}=$n;
$m = $n if $n > $m;
print STDERR "Found $p $n\n";
}
close(F);
my (@inclist,@iplist4,@iplist6,@iplist4_l,@iplist6_l);
foreach my $ips (glob('inc_generated/*.c.inc')) {
next if $ips =~ /ndpi_crawlers_match|ndpi_amazon_aws_api_gatewy_match/;
foreach my $ips (glob('../src/lib/inc_generated/*.c.inc')) {
#next if $ips =~ /ndpi_crawlers_match|ndpi_amazon_aws_api_gatewy_match|ndpi_icloud_private_relay_match/;
open(F,'<'.$ips) || die "open $ips $!";
my $found = 0;
foreach my $i (grep /^\s*static\s+(ndpi_network6?)\s+([a-zA-Z0-9_]+)\s*\[/,<F>) {
die "Bad $i" if $i !~ /^\s*static\s+(ndpi_network6?)\s+([a-zA-Z0-9_]+)\s*\[/;
if(!defined $L{$2}) {
#print "SKIP $1 $2\n";
#next;
print "SKIP $1 $2\n";
next;
}
if(defined $SL{$2}) {
print "SKIP $1 $2\n";
next;
}
if($1 eq 'ndpi_network') {
push @iplist4,"\&$2\[0\]";