From 8e17f508531be977eab15746a0a733f0866e7f07 Mon Sep 17 00:00:00 2001 From: Luca Deri Date: Fri, 11 Aug 2023 23:55:44 +0200 Subject: Added ndpi_filter_add_multi() API call --- src/include/ndpi_api.h | 1 + src/lib/ndpi_filter.c | 12 ++++++++++++ 2 files changed, 13 insertions(+) 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); -- cgit v1.2.3