aboutsummaryrefslogtreecommitdiff
path: root/src/include/ndpi_api.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/ndpi_api.h')
-rw-r--r--src/include/ndpi_api.h30
1 files changed, 24 insertions, 6 deletions
diff --git a/src/include/ndpi_api.h b/src/include/ndpi_api.h
index 6bf2d5779..3c30f1f69 100644
--- a/src/include/ndpi_api.h
+++ b/src/include/ndpi_api.h
@@ -225,12 +225,14 @@ extern "C" {
* @par ndpi_struct = the detection module
* @par flow = the flow given for the detection module
* @par enable_guess = guess protocol if unknown
+ * @par protocol_was_guessed = 1 if the protocol was guesses (requires enable_guess = 1), 0 otherwise
* @return the detected protocol even if the flow is not completed;
*
*/
ndpi_protocol ndpi_detection_giveup(struct ndpi_detection_module_struct *ndpi_struct,
struct ndpi_flow_struct *flow,
- u_int8_t enable_guess);
+ u_int8_t enable_guess,
+ u_int8_t *protocol_was_guessed);
/**
* Processes an extra packet in order to get more information for a given protocol
@@ -613,6 +615,16 @@ extern "C" {
int ndpi_load_protocols_file(struct ndpi_detection_module_struct *ndpi_mod,
const char* path);
+ /**
+ * Read a file and load the categories
+ *
+ * @par ndpi_mod = the detection module
+ * @par path = the path of the file
+ * @return 0 if the file is loaded correctly;
+ * -1 else
+ */
+ int ndpi_load_categories_file(struct ndpi_detection_module_struct *ndpi_str, const char* path);
+
/**
* Get the total number of the supported protocols
*
@@ -744,10 +756,12 @@ extern "C" {
*/
int ndpi_match_string(void *_automa, char *string_to_match);
- void ndpi_load_ip_category(struct ndpi_detection_module_struct *ndpi_struct,
- char *ip_address_and_mask, ndpi_protocol_category_t category);
+ int ndpi_load_ip_category(struct ndpi_detection_module_struct *ndpi_struct,
+ const char *ip_address_and_mask, ndpi_protocol_category_t category);
int ndpi_load_hostname_category(struct ndpi_detection_module_struct *ndpi_struct,
- char *name, ndpi_protocol_category_t category);
+ const char *name_to_add, ndpi_protocol_category_t category);
+ int ndpi_load_category(struct ndpi_detection_module_struct *ndpi_struct,
+ const char *ip_or_name, ndpi_protocol_category_t category);
int ndpi_enable_loaded_categories(struct ndpi_detection_module_struct *ndpi_struct);
int ndpi_fill_ip_protocol_category(struct ndpi_detection_module_struct *ndpi_struct,
u_int32_t saddr,
@@ -759,11 +773,15 @@ extern "C" {
struct ndpi_flow_struct *flow,
ndpi_protocol *ret);
int ndpi_get_custom_category_match(struct ndpi_detection_module_struct *ndpi_struct,
- char *name_or_ip, u_int name_len, unsigned long *id);
+ char *name_or_ip, u_int name_len, unsigned long *id);
int ndpi_set_detection_preferences(struct ndpi_detection_module_struct *ndpi_mod,
ndpi_detection_preference pref,
int value);
+ /* Tells to called on what l4 protocol given application protocol can be found */
+ ndpi_l4_proto_info ndpi_get_l4_proto_info(struct ndpi_detection_module_struct *ndpi_struct, u_int16_t ndpi_proto_id);
+ const char* ndpi_get_l4_proto_name(ndpi_l4_proto_info proto);
+
ndpi_proto_defaults_t* ndpi_get_proto_defaults(struct ndpi_detection_module_struct *ndpi_mod);
u_int ndpi_get_ndpi_num_supported_protocols(struct ndpi_detection_module_struct *ndpi_mod);
u_int ndpi_get_ndpi_num_custom_protocols(struct ndpi_detection_module_struct *ndpi_mod);
@@ -817,7 +835,7 @@ extern "C" {
char *buffer, u_int buffer_size,
u_int8_t min_string_match_len, /* Will return 0 if no string > min_string_match_len have been found */
char *outbuf, u_int outbuf_len);
- char* ndpi_ssl_version2str(u_int16_t version);
+ char* ndpi_ssl_version2str(u_int16_t version, u_int8_t *unknown_tls_version);
/* Serializer */
int ndpi_init_serializer_ll(ndpi_serializer *serializer, ndpi_serialization_format fmt,