diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/include/ndpi_api.h | 4 | ||||
-rw-r--r-- | src/include/ndpi_typedefs.h | 24 | ||||
-rw-r--r-- | src/lib/ndpi_main.c | 10 | ||||
-rw-r--r-- | src/lib/ndpi_os_fingerprint.c.inc | 134 | ||||
-rw-r--r-- | src/lib/ndpi_utils.c | 16 |
5 files changed, 95 insertions, 93 deletions
diff --git a/src/include/ndpi_api.h b/src/include/ndpi_api.h index 3b06b0f9d..60d0ea3e3 100644 --- a/src/include/ndpi_api.h +++ b/src/include/ndpi_api.h @@ -900,7 +900,7 @@ extern "C" { -2 Unable to add a new entry */ int ndpi_add_tcp_fingerprint(struct ndpi_detection_module_struct *ndpi_str, - char *fingerprint, enum operating_system_hint os); + char *fingerprint, ndpi_os os); /** * Read a file and load the list of TCP fingerprints @@ -2387,7 +2387,7 @@ extern "C" { /* ******************************* */ - const char* ndpi_print_os_hint(u_int8_t os_hint); + const char* ndpi_print_os_hint(ndpi_os os_hint); /* ******************************* */ diff --git a/src/include/ndpi_typedefs.h b/src/include/ndpi_typedefs.h index 54767a1a3..7fdd90e2f 100644 --- a/src/include/ndpi_typedefs.h +++ b/src/include/ndpi_typedefs.h @@ -1280,20 +1280,20 @@ struct ndpi_metadata_monitoring { } protos; }; -enum operating_system_hint { - os_hint_unknown = 0, - os_hint_windows = 1, - os_hint_macos = 2, - os_hint_ios_ipad_os = 3, - os_hint_android = 4, - os_hint_linux = 5, - os_hint_freebsd = 6, - os_hint_MAX_OS = 7 /* Keep it as last */ -}; +typedef enum { + ndpi_os_unknown = 0, + ndpi_os_windows = 1, + ndpi_os_macos = 2, + ndpi_os_ios_ipad_os = 3, + ndpi_os_android = 4, + ndpi_os_linux = 5, + ndpi_os_freebsd = 6, + ndpi_os_MAX_OS = 7 /* Keep it as last */ +} ndpi_os; struct os_fingerprint { const char *fingerprint; - enum operating_system_hint os; + ndpi_os os; }; struct rtp_info { @@ -1377,7 +1377,7 @@ struct ndpi_flow_struct { struct { char *fingerprint; - enum operating_system_hint os_hint; + ndpi_os os_hint; } tcp; /* diff --git a/src/lib/ndpi_main.c b/src/lib/ndpi_main.c index 3a618949c..12a37a903 100644 --- a/src/lib/ndpi_main.c +++ b/src/lib/ndpi_main.c @@ -5472,7 +5472,7 @@ int load_malicious_sha1_file_fd(struct ndpi_detection_module_struct *ndpi_str, F -2 Unable to add a new entry */ int ndpi_add_tcp_fingerprint(struct ndpi_detection_module_struct *ndpi_str, - char *fingerprint, enum operating_system_hint os) { + char *fingerprint, ndpi_os os) { u_int len; u_int16_t ret; @@ -5536,7 +5536,7 @@ int load_tcp_fingerprint_file_fd(struct ndpi_detection_module_struct *ndpi_str, while (fgets(buffer, sizeof(buffer), fd) != NULL) { char *fingerprint, *os, *tmp; - enum operating_system_hint os_num; + ndpi_os os_num; size_t len = strlen(buffer); if(len <= 1 || buffer[0] == '#') @@ -5546,9 +5546,9 @@ int load_tcp_fingerprint_file_fd(struct ndpi_detection_module_struct *ndpi_str, if(!fingerprint) continue; os = strtok_r(NULL, "\t", &tmp); - if(!os) continue; else os_num = (enum operating_system_hint)atoi(os); + if(!os) continue; else os_num = (ndpi_os)atoi(os); - if(os_num >= os_hint_MAX_OS) continue; + if(os_num >= ndpi_os_MAX_OS) continue; if(ndpi_add_tcp_fingerprint(ndpi_str, fingerprint, os_num) == 0) num++; @@ -7191,7 +7191,7 @@ static int ndpi_init_packet(struct ndpi_detection_module_struct *ndpi_str, sha_hash[0], sha_hash[1], sha_hash[2], sha_hash[3], sha_hash[4], sha_hash[5]); - flow->tcp.fingerprint = ndpi_strdup(fingerprint), flow->tcp.os_hint = os_hint_unknown; + flow->tcp.fingerprint = ndpi_strdup(fingerprint), flow->tcp.os_hint = ndpi_os_unknown; if(ndpi_str->tcp_fingerprint_hashmap != NULL) { u_int16_t ret; diff --git a/src/lib/ndpi_os_fingerprint.c.inc b/src/lib/ndpi_os_fingerprint.c.inc index 2f63efe2d..110c5f34f 100644 --- a/src/lib/ndpi_os_fingerprint.c.inc +++ b/src/lib/ndpi_os_fingerprint.c.inc @@ -1,76 +1,76 @@ static struct os_fingerprint tcp_fps[] = { - { "2_64_65535_8bf9e292397e", os_hint_freebsd }, + { "2_64_65535_8bf9e292397e", ndpi_os_freebsd }, - { "2_64_64800_83b2f9a5576c", os_hint_linux }, - { "2_64_64240_2e3cee914fc1", os_hint_linux }, - { "2_64_29200_2e3cee914fc1", os_hint_linux }, - { "2_64_29200_d853e95bd80f", os_hint_linux }, /* Sonos */ - { "2_64_14600_8c07a80cc645", os_hint_linux }, /* QNAP */ - { "2_64_64240_2e3cee914fc1", os_hint_linux }, /* rPI */ - { "2_64_32120_2e3cee914fc1", os_hint_linux }, /* rPI */ - { "2_64_29200_90541420d839", os_hint_linux }, /* Suse Linux */ - { "2_64_64240_41a9d5af7dd3", os_hint_linux }, + { "2_64_64800_83b2f9a5576c", ndpi_os_linux }, + { "2_64_64240_2e3cee914fc1", ndpi_os_linux }, + { "2_64_29200_2e3cee914fc1", ndpi_os_linux }, + { "2_64_29200_d853e95bd80f", ndpi_os_linux }, /* Sonos */ + { "2_64_14600_8c07a80cc645", ndpi_os_linux }, /* QNAP */ + { "2_64_64240_2e3cee914fc1", ndpi_os_linux }, /* rPI */ + { "2_64_32120_2e3cee914fc1", ndpi_os_linux }, /* rPI */ + { "2_64_29200_90541420d839", ndpi_os_linux }, /* Suse Linux */ + { "2_64_64240_41a9d5af7dd3", ndpi_os_linux }, - { "2_64_65535_d876f498b09e", os_hint_android }, - { "2_64_65535_685ad951a756", os_hint_android }, - { "2_64_65535_41a9d5af7dd3", os_hint_android }, - { "2_64_65535_148107a0d970", os_hint_android }, - { "2_64_65535_f518bfb025b0", os_hint_android }, + { "2_64_65535_d876f498b09e", ndpi_os_android }, + { "2_64_65535_685ad951a756", ndpi_os_android }, + { "2_64_65535_41a9d5af7dd3", ndpi_os_android }, + { "2_64_65535_148107a0d970", ndpi_os_android }, + { "2_64_65535_f518bfb025b0", ndpi_os_android }, - { "2_128_64240_6bb88f5575fd", os_hint_windows }, - { "2_128_8192_4697958db063", os_hint_windows }, /* Windows 7 */ - { "194_128_64240_0c6c715fcb8e", os_hint_windows }, - { "194_128_64240_29659b8d8574", os_hint_windows }, - { "194_128_32768_e75eea53a4fd", os_hint_windows }, - { "194_128_32768_84fee6d35dde", os_hint_windows }, - { "194_128_64240_6bb88f5575fd", os_hint_windows }, - { "2_128_32768_5a9ef1c58d0b", os_hint_windows }, - { "194_128_32768_5a9ef1c58d0b", os_hint_windows }, - { "2_128_65535_6bb88f5575fd", os_hint_windows }, + { "2_128_64240_6bb88f5575fd", ndpi_os_windows }, + { "2_128_8192_4697958db063", ndpi_os_windows }, /* Windows 7 */ + { "194_128_64240_0c6c715fcb8e", ndpi_os_windows }, + { "194_128_64240_29659b8d8574", ndpi_os_windows }, + { "194_128_32768_e75eea53a4fd", ndpi_os_windows }, + { "194_128_32768_84fee6d35dde", ndpi_os_windows }, + { "194_128_64240_6bb88f5575fd", ndpi_os_windows }, + { "2_128_32768_5a9ef1c58d0b", ndpi_os_windows }, + { "194_128_32768_5a9ef1c58d0b", ndpi_os_windows }, + { "2_128_65535_6bb88f5575fd", ndpi_os_windows }, - { "194_128_32_5a9ef1c58d0b", os_hint_windows }, - { "194_128_64954_5df61ba47d16", os_hint_windows }, - { "194_128_65160_720287bf387b", os_hint_windows }, - { "194_128_65160_f7c19d625909", os_hint_windows }, - { "194_128_65340_5df61ba47d16", os_hint_windows }, - { "194_128_65535_35ea98532c26", os_hint_windows }, - { "194_128_65535_6bb88f5575fd", os_hint_windows }, - { "194_128_65535_9f39700b863a", os_hint_windows }, - { "194_128_8192_5a9ef1c58d0b", os_hint_windows }, - { "2_128_62636_f7c19d625909", os_hint_windows }, - { "2_128_62720_6bb88f5575fd", os_hint_windows }, - { "2_128_64390_186255600578", os_hint_windows }, - { "2_128_64512_d978a30274f9", os_hint_windows }, - { "2_128_64668_ba856ac24bae", os_hint_windows }, - { "2_128_64872_7ec39e7a0c60", os_hint_windows }, - { "2_128_65010_d7f34a3d4a0e", os_hint_windows }, - { "2_128_65088_e6db4d959510", os_hint_windows }, - { "2_128_65160_f7c19d625909", os_hint_windows }, - { "2_128_65312_6e130c7ac874", os_hint_windows }, - { "2_128_65424_d408bed9ba71", os_hint_windows }, - { "2_128_65520_91f9ecb5d85c", os_hint_windows }, - { "2_128_65535_46c195dc1606", os_hint_windows }, - { "2_128_65535_8739305ee1fa", os_hint_windows }, - { "2_128_65535_91f9ecb5d85c", os_hint_windows }, - { "2_128_65535_d408bed9ba71", os_hint_windows }, - { "2_128_65535_d7f34a3d4a0e", os_hint_windows }, - { "2_128_65535_e83222749ab9", os_hint_windows }, - { "2_128_65535_f7c19d625909", os_hint_windows }, + { "194_128_32_5a9ef1c58d0b", ndpi_os_windows }, + { "194_128_64954_5df61ba47d16", ndpi_os_windows }, + { "194_128_65160_720287bf387b", ndpi_os_windows }, + { "194_128_65160_f7c19d625909", ndpi_os_windows }, + { "194_128_65340_5df61ba47d16", ndpi_os_windows }, + { "194_128_65535_35ea98532c26", ndpi_os_windows }, + { "194_128_65535_6bb88f5575fd", ndpi_os_windows }, + { "194_128_65535_9f39700b863a", ndpi_os_windows }, + { "194_128_8192_5a9ef1c58d0b", ndpi_os_windows }, + { "2_128_62636_f7c19d625909", ndpi_os_windows }, + { "2_128_62720_6bb88f5575fd", ndpi_os_windows }, + { "2_128_64390_186255600578", ndpi_os_windows }, + { "2_128_64512_d978a30274f9", ndpi_os_windows }, + { "2_128_64668_ba856ac24bae", ndpi_os_windows }, + { "2_128_64872_7ec39e7a0c60", ndpi_os_windows }, + { "2_128_65010_d7f34a3d4a0e", ndpi_os_windows }, + { "2_128_65088_e6db4d959510", ndpi_os_windows }, + { "2_128_65160_f7c19d625909", ndpi_os_windows }, + { "2_128_65312_6e130c7ac874", ndpi_os_windows }, + { "2_128_65424_d408bed9ba71", ndpi_os_windows }, + { "2_128_65520_91f9ecb5d85c", ndpi_os_windows }, + { "2_128_65535_46c195dc1606", ndpi_os_windows }, + { "2_128_65535_8739305ee1fa", ndpi_os_windows }, + { "2_128_65535_91f9ecb5d85c", ndpi_os_windows }, + { "2_128_65535_d408bed9ba71", ndpi_os_windows }, + { "2_128_65535_d7f34a3d4a0e", ndpi_os_windows }, + { "2_128_65535_e83222749ab9", ndpi_os_windows }, + { "2_128_65535_f7c19d625909", ndpi_os_windows }, - { "194_64_65535_15db81ff8b0d", os_hint_ios_ipad_os }, - { "194_64_65535_dd5737e4fedb", os_hint_ios_ipad_os }, - { "194_64_65535_d3a424420f2a", os_hint_ios_ipad_os }, - { "194_64_0_d29295416479", os_hint_ios_ipad_os }, + { "194_64_65535_15db81ff8b0d", ndpi_os_ios_ipad_os }, + { "194_64_65535_dd5737e4fedb", ndpi_os_ios_ipad_os }, + { "194_64_65535_d3a424420f2a", ndpi_os_ios_ipad_os }, + { "194_64_0_d29295416479", ndpi_os_ios_ipad_os }, - { "194_64_65535_d29295416479", os_hint_macos }, - { "194_64_65535_78dd6871cb6d", os_hint_macos }, - { "2_64_65535_d29295416479", os_hint_macos }, - { "2_64_0_d29295416479", os_hint_macos }, - { "2_64_65535_d29295416479", os_hint_macos }, - { "2_64_65535_dd5737e4fedb", os_hint_macos }, - { "2_64_65535_99a660d3e328", os_hint_macos }, - { "2_64_65535_78dd6871cb6d", os_hint_macos }, - { "2_64_65535_09b18f059744", os_hint_macos }, + { "194_64_65535_d29295416479", ndpi_os_macos }, + { "194_64_65535_78dd6871cb6d", ndpi_os_macos }, + { "2_64_65535_d29295416479", ndpi_os_macos }, + { "2_64_0_d29295416479", ndpi_os_macos }, + { "2_64_65535_d29295416479", ndpi_os_macos }, + { "2_64_65535_dd5737e4fedb", ndpi_os_macos }, + { "2_64_65535_99a660d3e328", ndpi_os_macos }, + { "2_64_65535_78dd6871cb6d", ndpi_os_macos }, + { "2_64_65535_09b18f059744", ndpi_os_macos }, - { NULL, os_hint_unknown }, + { NULL, ndpi_os_unknown }, }; diff --git a/src/lib/ndpi_utils.c b/src/lib/ndpi_utils.c index 804a29c6f..fc171d5e7 100644 --- a/src/lib/ndpi_utils.c +++ b/src/lib/ndpi_utils.c @@ -4209,14 +4209,16 @@ char* ndpi_quick_decrypt(const char *encrypted_msg, /* ************************************************************** */ -const char* ndpi_print_os_hint(u_int8_t os_hint) { +const char* ndpi_print_os_hint(ndpi_os os_hint) { switch(os_hint) { - case os_hint_windows: return("Windows"); - case os_hint_macos: return("macOS"); - case os_hint_ios_ipad_os: return("iOS/iPad"); - case os_hint_android: return("Android"); - case os_hint_linux: return("Linux"); - case os_hint_freebsd: return("FreeBSD"); + case ndpi_os_windows: return("Windows"); + case ndpi_os_macos: return("macOS"); + case ndpi_os_ios_ipad_os: return("iOS/iPad"); + case ndpi_os_android: return("Android"); + case ndpi_os_linux: return("Linux"); + case ndpi_os_freebsd: return("FreeBSD"); + default: + break; } return("Unknown"); |