aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuca Deri <deri@ntop.org>2023-08-11 23:55:44 +0200
committerLuca Deri <deri@ntop.org>2023-08-11 23:55:44 +0200
commit8e17f508531be977eab15746a0a733f0866e7f07 (patch)
tree6e088c4f4766b1c333d3823e102c12b9027a8912
parent890dcf91d9f1e8482dd9547823d77ec9c35d2662 (diff)
Added ndpi_filter_add_multi() API call
-rw-r--r--src/include/ndpi_api.h1
-rw-r--r--src/lib/ndpi_filter.c12
2 files changed, 13 insertions, 0 deletions
diff --git a/src/include/ndpi_api.h b/src/include/ndpi_api.h
index 9030cb6d0..0e519cbf5 100644
--- a/src/include/ndpi_api.h
+++ b/src/include/ndpi_api.h
@@ -1996,6 +1996,7 @@ extern "C" {
ndpi_filter* ndpi_filter_alloc(uint32_t elements_number);
bool ndpi_filter_add(ndpi_filter *f, uint64_t value); /* returns true on success, false on failure */
+ bool ndpi_filter_add_multi(ndpi_filter *f, uint64_t *values, u_int32_t num_values); /* Add multiple values */
bool ndpi_filter_contains(ndpi_filter *f, uint64_t value); /* returns true on success, false on failure */
void ndpi_filter_free(ndpi_filter *f);
diff --git a/src/lib/ndpi_filter.c b/src/lib/ndpi_filter.c
index 989eb9317..579d49638 100644
--- a/src/lib/ndpi_filter.c
+++ b/src/lib/ndpi_filter.c
@@ -68,6 +68,18 @@ bool ndpi_filter_add(ndpi_filter *f, uint64_t value) {
/* ******************************************* */
+bool ndpi_filter_add_multi(ndpi_filter *f, uint64_t *values, u_int32_t num_values) {
+ if(!f)
+ return(false);
+ else {
+ binary_fuse8_t *filter = (binary_fuse8_t*)f;
+
+ return(binary_fuse8_populate(values, num_values, filter));
+ }
+}
+
+/* ******************************************* */
+
bool ndpi_filter_contains(ndpi_filter *f, uint64_t value) {
if(!f)
return(false);