aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/include/ndpi_api.h4
-rw-r--r--src/include/ndpi_typedefs.h24
-rw-r--r--src/lib/ndpi_main.c10
-rw-r--r--src/lib/ndpi_os_fingerprint.c.inc134
-rw-r--r--src/lib/ndpi_utils.c16
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");