diff options
Diffstat (limited to 'src/include/ndpi_api.h')
-rw-r--r-- | src/include/ndpi_api.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/include/ndpi_api.h b/src/include/ndpi_api.h index b20305e33..f4c2f6114 100644 --- a/src/include/ndpi_api.h +++ b/src/include/ndpi_api.h @@ -2147,6 +2147,9 @@ extern "C" { u_int8_t class_id, char *file_path); bool ndpi_domain_classify_finalize(ndpi_domain_classify *s); + const char* ndpi_domain_classify_longest_prefix(ndpi_domain_classify *s, + u_int8_t *class_id /* out */, + const char *hostnname); bool ndpi_domain_classify_contains(ndpi_domain_classify *s, u_int8_t *class_id /* out */, const char *domain); @@ -2188,6 +2191,8 @@ extern "C" { /** * Get user data which was previously set with `ndpi_set_user_data()`. * + * @par ndpi_str = the struct created for the protocol detection + * * @return the user data pointer * */ @@ -2195,6 +2200,36 @@ extern "C" { /* ******************************* */ + /** + * Loads the domain suffixes from the specified path. You need to + * perform this action once + * + * @par ndpi_str = the struct created for the protocol detection + * @par public_suffix_list_path = path of the public_suffix_list path + * + * @return 0 = no error, -1 otherwise + * + */ + int ndpi_load_domain_suffixes(struct ndpi_detection_module_struct *ndpi_str, + char *public_suffix_list_path); + + /** + * Returns the domain suffix out of the specified hostname. + * The returned pointer is an offset of the original hostname. + * Note that you need to call ndpi_load_domain_suffixes() before + * calling this function. + * + * @par ndpi_str = the struct created for the protocol detection + * @par hostname = the hostname from which the domain name has to be extracted + * + * @return The host domain name or the hostitself if not found. + * + */ + const char* ndpi_get_host_domain_suffix(struct ndpi_detection_module_struct *ndpi_str, + const char *hostname); + + /* ******************************* */ + /* Can't call libc functions from kernel space, define some stub instead */ #define ndpi_isalpha(ch) (((ch) >= 'a' && (ch) <= 'z') || ((ch) >= 'A' && (ch) <= 'Z')) |