diff options
author | Luca Deri <deri@ntop.org> | 2020-07-16 11:22:06 +0200 |
---|---|---|
committer | Luca Deri <deri@ntop.org> | 2020-07-16 11:22:06 +0200 |
commit | acd05b171eee29d50a112179d847371b5466cec1 (patch) | |
tree | e9461bc44a146ae2228461f85a91f89be42ba8f4 | |
parent | 46e97d5da394aed103b6e41336699c7209fb03b0 (diff) |
Added ndpi_data_last() API call
-rw-r--r-- | src/include/ndpi_api.h.in | 1 | ||||
-rw-r--r-- | src/lib/ndpi_analyze.c | 10 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/include/ndpi_api.h.in b/src/include/ndpi_api.h.in index 5d77d6221..8e9df55b8 100644 --- a/src/include/ndpi_api.h.in +++ b/src/include/ndpi_api.h.in @@ -1040,6 +1040,7 @@ extern "C" { float ndpi_data_entropy(struct ndpi_analyze_struct *s); float ndpi_data_variance(struct ndpi_analyze_struct *s); float ndpi_data_stddev(struct ndpi_analyze_struct *s); + u_int32_t ndpi_data_last(struct ndpi_analyze_struct *s); u_int32_t ndpi_data_min(struct ndpi_analyze_struct *s); u_int32_t ndpi_data_max(struct ndpi_analyze_struct *s); float ndpi_data_ratio(u_int32_t sent, u_int32_t rcvd); diff --git a/src/lib/ndpi_analyze.c b/src/lib/ndpi_analyze.c index 7d4aa5f47..489b402f6 100644 --- a/src/lib/ndpi_analyze.c +++ b/src/lib/ndpi_analyze.c @@ -112,6 +112,16 @@ float ndpi_data_average(struct ndpi_analyze_struct *s) { /* ********************************************************************************* */ +u_int32_t ndpi_data_last(struct ndpi_analyze_struct *s) { + if((s->num_data_entries == 0) || (s->sum_total == 0)) + return(0); + + if(s->next_value_insert_index == 0) + return(s->values[s->num_values_array_len-1]); + else + return(s->values[s->next_value_insert_index-1]); +} + /* Return min/max on all values */ u_int32_t ndpi_data_min(struct ndpi_analyze_struct *s) { return(s->min_val); } u_int32_t ndpi_data_max(struct ndpi_analyze_struct *s) { return(s->max_val); } |