{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":34194075,"defaultBranch":"dev","name":"nDPI","ownerLogin":"ntop","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2015-04-19T04:56:52.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/12014789?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1722844205.0","currentOid":""},"activityList":{"items":[{"before":"bc9472277d9beaf2201b3f43463c062f2fcf0b13","after":"9e5d0e05d341b58bb4de76e16a6102e55eac9cc1","ref":"refs/heads/dev","pushedAt":"2024-09-10T17:32:31.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"QUIC: add a basic heuristic to detect mid-flows","shortMessageHtmlLink":"QUIC: add a basic heuristic to detect mid-flows"}},{"before":"7fdc4b2472baec0ba0927f861a286ed39ac1c684","after":"bc9472277d9beaf2201b3f43463c062f2fcf0b13","ref":"refs/heads/dev","pushedAt":"2024-09-10T14:33:06.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"RTMP: improve detection (#2549)","shortMessageHtmlLink":"RTMP: improve detection (#2549)"}},{"before":"f4d2002ce93f1129d5ebf844bad55edfb72216b7","after":"7fdc4b2472baec0ba0927f861a286ed39ac1c684","ref":"refs/heads/dev","pushedAt":"2024-09-10T14:22:06.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"lucaderi","name":"Luca Deri","path":"/lucaderi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4493366?s=80&v=4"},"commit":{"message":"Implemented algorithms for K-Nearest Neighbor Search (KNN) (#2554)\n\n* Extended API with functions for vector similarity based on KD-trees https://en.wikipedia.org/wiki/K-d_tree\r\n\r\nndpi_kd_tree* ndpi_kd_create(u_int num_dimensions);\r\nvoid ndpi_kd_free(ndpi_kd_tree *tree);\r\nvoid ndpi_kd_clear(ndpi_kd_tree *tree);\r\nbool ndpi_kd_insert(ndpi_kd_tree *tree, const double *data_vector, void *user_data);\r\nndpi_kd_tree_result *ndpi_kd_nearest(ndpi_kd_tree *tree, const double *data_vector);\r\nu_int32_t ndpi_kd_num_results(ndpi_kd_tree_result *res);\r\nbool ndpi_kd_result_end(ndpi_kd_tree_result *res);\r\ndouble* ndpi_kd_result_get_item(ndpi_kd_tree_result *res, double **user_data);\r\nbool ndpi_kd_result_next(ndpi_kd_tree_result *res);\r\nvoid ndpi_kd_result_free(ndpi_kd_tree_result *res);\r\ndouble ndpi_kd_distance(double *a1, double *b2, u_int num_dimensions);","shortMessageHtmlLink":"Implemented algorithms for K-Nearest Neighbor Search (KNN) (#2554)"}},{"before":"d15dd430e7e253cd2798151a45c14f4039cc21be","after":"f4d2002ce93f1129d5ebf844bad55edfb72216b7","ref":"refs/heads/dev","pushedAt":"2024-09-09T13:13:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaderi","name":"Luca Deri","path":"/lucaderi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4493366?s=80&v=4"},"commit":{"message":"Fix for name clash on some compilers","shortMessageHtmlLink":"Fix for name clash on some compilers"}},{"before":"92507c014626bc542f2ab11c729742802c0bc345","after":"d15dd430e7e253cd2798151a45c14f4039cc21be","ref":"refs/heads/dev","pushedAt":"2024-09-08T20:10:01.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaderi","name":"Luca Deri","path":"/lucaderi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4493366?s=80&v=4"},"commit":{"message":"Added ability to save JA4_r as decimal value","shortMessageHtmlLink":"Added ability to save JA4_r as decimal value"}},{"before":"3b5dee1cc0038fdb09f5ff1b18f05dd561dbcb1c","after":"92507c014626bc542f2ab11c729742802c0bc345","ref":"refs/heads/dev","pushedAt":"2024-09-07T10:00:31.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"oracle: fix dissector (#2548)\n\nWe can do definitely better, but this change is a big improvements\r\nrespect the current broken code","shortMessageHtmlLink":"oracle: fix dissector (#2548)"}},{"before":"42ded07139e41c54a9ae2c8875a9e2c56d50af41","after":"3b5dee1cc0038fdb09f5ff1b18f05dd561dbcb1c","ref":"refs/heads/dev","pushedAt":"2024-09-05T20:05:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"Fix compilation (#2546)","shortMessageHtmlLink":"Fix compilation (#2546)"}},{"before":"2964c23ca1f9af4df5c93e337987c6823b2ac663","after":"42ded07139e41c54a9ae2c8875a9e2c56d50af41","ref":"refs/heads/dev","pushedAt":"2024-09-05T17:47:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaderi","name":"Luca Deri","path":"/lucaderi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4493366?s=80&v=4"},"commit":{"message":"Implemented JA4 raw (ja4_r) fingerprint\n\nExample:\n./example/ndpiReader -i tests/pcap/safari.pcap --cfg=tls,metadata.ja4r_fingerprint,1","shortMessageHtmlLink":"Implemented JA4 raw (ja4_r) fingerprint"}},{"before":"23ae3d0c265590a138f156c2193998e3b8f2fdd5","after":"2964c23ca1f9af4df5c93e337987c6823b2ac663","ref":"refs/heads/dev","pushedAt":"2024-09-05T14:36:51.000Z","pushType":"pr_merge","commitsCount":6,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"Add detection of Windscribe VPN","shortMessageHtmlLink":"Add detection of Windscribe VPN"}},{"before":"81eaa3bd528040a937acf0e80e6811d3cc2e13da","after":"23ae3d0c265590a138f156c2193998e3b8f2fdd5","ref":"refs/heads/dev","pushedAt":"2024-09-05T14:27:24.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"wireshark: extcap: export flow risk info","shortMessageHtmlLink":"wireshark: extcap: export flow risk info"}},{"before":"bf93f77f02b04e734ce6c8779d83bf489c2847bf","after":"81eaa3bd528040a937acf0e80e6811d3cc2e13da","ref":"refs/heads/dev","pushedAt":"2024-09-04T08:22:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"Add Lustre protocol detection support (#2544)","shortMessageHtmlLink":"Add Lustre protocol detection support (#2544)"}},{"before":"eb133b8fa5525330fc4e045b2184d5a5ac0197eb","after":"bf93f77f02b04e734ce6c8779d83bf489c2847bf","ref":"refs/heads/dev","pushedAt":"2024-09-03T11:02:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"Align serialized risk names to all others (first letter; uppercase letter) (#2541)\n\nSigned-off-by: Toni Uhlig ","shortMessageHtmlLink":"Align serialized risk names to all others (first letter; uppercase le…"}},{"before":"f2da1698953cca5797003935bb90d69d4fbc3dda","after":"eb133b8fa5525330fc4e045b2184d5a5ac0197eb","ref":"refs/heads/dev","pushedAt":"2024-09-03T10:44:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"TLS: better state about handshake (#2534)\n\nKeep track if we received CH or/and SH messsages: usefull with\r\nunidirectional flows","shortMessageHtmlLink":"TLS: better state about handshake (#2534)"}},{"before":"767f403e0df2d86590ad2d898d90727b901e9b60","after":"f2da1698953cca5797003935bb90d69d4fbc3dda","ref":"refs/heads/dev","pushedAt":"2024-09-03T10:41:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"bins: fix `ndpi_set_bin`, `ndpi_inc_bin` and `ndpi_get_bin_value` (#2536)\n\nWhen the required slot is too big, use the latest/bigger available bin,\r\nnot in the first one.","shortMessageHtmlLink":"bins: fix ndpi_set_bin
, ndpi_inc_bin
and ndpi_get_bin_value
(#2536"}},{"before":"5d8edccef8adcbf05bb5b01bd78b44ed2e80694e","after":"767f403e0df2d86590ad2d898d90727b901e9b60","ref":"refs/heads/dev","pushedAt":"2024-09-03T10:40:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"fuzz: improve fuzzing coverage (#2535)\n\nUpdtae pl7m code (fix a Use-of-uninitialized-value error and add GTP\r\nsupport)","shortMessageHtmlLink":"fuzz: improve fuzzing coverage (#2535)"}},{"before":"338eedd05b034991f1960898ca7680e65d7901f6","after":"5d8edccef8adcbf05bb5b01bd78b44ed2e80694e","ref":"refs/heads/dev","pushedAt":"2024-09-03T10:39:07.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"Bittorrent: improve detection of UTPv1 and avoid false positives","shortMessageHtmlLink":"Bittorrent: improve detection of UTPv1 and avoid false positives"}},{"before":"2d040247a77c96a8411477e8ad38c0e07a5e1b54","after":"338eedd05b034991f1960898ca7680e65d7901f6","ref":"refs/heads/dev","pushedAt":"2024-09-03T10:35:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"HTTP, QUIC, TLS: allow to disable sub-classification (#2533)","shortMessageHtmlLink":"HTTP, QUIC, TLS: allow to disable sub-classification (#2533)"}},{"before":"bcce6beee493862175b8707b2433da7184fcba62","after":"2d040247a77c96a8411477e8ad38c0e07a5e1b54","ref":"refs/heads/dev","pushedAt":"2024-09-02T16:11:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cardigliano","name":"Alfredo Cardigliano","path":"/cardigliano","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7548711?s=80&v=4"},"commit":{"message":"Update doc","shortMessageHtmlLink":"Update doc"}},{"before":"3189f19b0fea497ad2108ef498d04818a015d329","after":"bcce6beee493862175b8707b2433da7184fcba62","ref":"refs/heads/dev","pushedAt":"2024-09-02T06:17:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"Improved Yahoo matching for Japanese traffic (#2539)\n\nJapanese Yahoo domains are missed. Add yahoo.co.jp, yimg.jp, and the\r\ndomain for ads seen when accessing yahoo.co.jp.","shortMessageHtmlLink":"Improved Yahoo matching for Japanese traffic (#2539)"}},{"before":"69fd4aadf3ed362ba67f03975f8b72c733bca7f7","after":"3189f19b0fea497ad2108ef498d04818a015d329","ref":"refs/heads/dev","pushedAt":"2024-08-30T11:31:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"Fix CNP-IP false positives (#2531)","shortMessageHtmlLink":"Fix CNP-IP false positives (#2531)"}},{"before":"d769b23e05f93158302cf6904b182860b05545e9","after":"69fd4aadf3ed362ba67f03975f8b72c733bca7f7","ref":"refs/heads/dev","pushedAt":"2024-08-28T09:41:17.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"cardigliano","name":"Alfredo Cardigliano","path":"/cardigliano","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7548711?s=80&v=4"},"commit":{"message":"Print risk code in ndpi_dump_risks_score","shortMessageHtmlLink":"Print risk code in ndpi_dump_risks_score"}},{"before":"5436dddef55e068095ca56b114715a91a551bf26","after":"d769b23e05f93158302cf6904b182860b05545e9","ref":"refs/heads/dev","pushedAt":"2024-08-27T14:38:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaderi","name":"Luca Deri","path":"/lucaderi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4493366?s=80&v=4"},"commit":{"message":"Added print_ndpi_address_port in nDPi API","shortMessageHtmlLink":"Added print_ndpi_address_port in nDPi API"}},{"before":"34e1ac0bbbc33698953a9b4a3de67bb1b8f2445c","after":"5436dddef55e068095ca56b114715a91a551bf26","ref":"refs/heads/dev","pushedAt":"2024-08-27T13:41:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaderi","name":"Luca Deri","path":"/lucaderi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4493366?s=80&v=4"},"commit":{"message":"Added ndpi_risk2code and ndpi_code2risk","shortMessageHtmlLink":"Added ndpi_risk2code and ndpi_code2risk"}},{"before":"6fcd1ba9419da36587e7bb58cd9599f090fa42ab","after":"34e1ac0bbbc33698953a9b4a3de67bb1b8f2445c","ref":"refs/heads/dev","pushedAt":"2024-08-26T19:01:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"fuzz: fix compilation (#2532)","shortMessageHtmlLink":"fuzz: fix compilation (#2532)"}},{"before":"9263d4dd873c4e2068e392a692b20609b1ec5a9a","after":"6fcd1ba9419da36587e7bb58cd9599f090fa42ab","ref":"refs/heads/dev","pushedAt":"2024-08-26T14:48:50.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"lucaderi","name":"Luca Deri","path":"/lucaderi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4493366?s=80&v=4"},"commit":{"message":"ndpi_get_protocol_by_name now return UNKNoWN when one protocol (either master or app) is not recognized","shortMessageHtmlLink":"ndpi_get_protocol_by_name now return UNKNoWN when one protocol (eithe…"}},{"before":"e4e91e9380618229b66da7210f920f7099d6e214","after":"9263d4dd873c4e2068e392a692b20609b1ec5a9a","ref":"refs/heads/dev","pushedAt":"2024-08-26T13:57:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaderi","name":"Luca Deri","path":"/lucaderi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4493366?s=80&v=4"},"commit":{"message":"Added in API\nbool ndpi_is_proto(ndpi_master_app_protocol proto, u_int16_t p);\nbool ndpi_is_proto_unknown(ndpi_master_app_protocol proto);\nbool ndpi_is_proto_equals(ndpi_master_app_protocol to_check, ndpi_master_app_protocol to_match, bool exact_match_only);\nu_int16_t ndpi_get_proto_by_name(struct ndpi_detection_module_struct *ndpi_mod, const char *name);\nchar* ndpi_get_proto_by_id(struct ndpi_detection_module_struct *ndpi_mod, u_int id);\nextern ndpi_master_app_protocol ndpi_get_protocol_by_name(struct ndpi_detection_module_struct *ndpi_str, const char *name);\n\nRemoved (duplicate of ndpi_get_proto_by_name)\nint ndpi_get_protocol_id(struct ndpi_detection_module_struct *ndpi_mod, char *proto);","shortMessageHtmlLink":"Added in API"}},{"before":"64a5dc3cb3b3360d31da6014b377561cd899ad45","after":"e4e91e9380618229b66da7210f920f7099d6e214","ref":"refs/heads/dev","pushedAt":"2024-08-26T08:53:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaderi","name":"Luca Deri","path":"/lucaderi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4493366?s=80&v=4"},"commit":{"message":"Typo","shortMessageHtmlLink":"Typo"}},{"before":"fbbe40b821b8966e1699d075297ffefeb1d1572c","after":"64a5dc3cb3b3360d31da6014b377561cd899ad45","ref":"refs/heads/dev","pushedAt":"2024-08-25T11:31:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"Add TRDP protocol support (#2528)\n\nThe Train Real Time Data Protocol (TRDP) is a UDP/TCP-based communication protocol designed for IP networks in trains, enabling data exchange between devices such as door controls and air conditioning systems. It is standardized by the IEC under IEC 61375-2-3 and is not related to the Remote Desktop Protocol (RDP).","shortMessageHtmlLink":"Add TRDP protocol support (#2528)"}},{"before":"aec2e2fbb83d25382efe0ee65b0d9164c71b2ed7","after":"fbbe40b821b8966e1699d075297ffefeb1d1572c","ref":"refs/heads/dev","pushedAt":"2024-08-25T10:07:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaderi","name":"Luca Deri","path":"/lucaderi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4493366?s=80&v=4"},"commit":{"message":"Added comment","shortMessageHtmlLink":"Added comment"}},{"before":"763a9c647467bca5d43ccc555121bee5353ba2d4","after":"aec2e2fbb83d25382efe0ee65b0d9164c71b2ed7","ref":"refs/heads/dev","pushedAt":"2024-08-25T09:54:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"IvanNardi","name":"Ivan Nardi","path":"/IvanNardi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12729895?s=80&v=4"},"commit":{"message":"Endian-independent implementation of IEEE 802.3 CRC32 (#2529)","shortMessageHtmlLink":"Endian-independent implementation of IEEE 802.3 CRC32 (#2529)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEslnTIwA","startCursor":null,"endCursor":null}},"title":"Activity · ntop/nDPI"}