aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNardi Ivan <nardi.ivan@gmail.com>2023-09-15 20:30:30 +0200
committerIvan Nardi <12729895+IvanNardi@users.noreply.github.com>2023-09-16 11:26:11 +0200
commit70814002a98ec52deda2ff61ac03613916c3efeb (patch)
tree05464457bdc5d5a3ab43befdefff7894ba2cd8ed /src
parent0828dff3acae6e06e6ac1d284ecb2c19ad83d27d (diff)
fuzz: extend fuzzing coverage
Diffstat (limited to 'src')
-rw-r--r--src/lib/ndpi_domain_classify.c3
-rw-r--r--src/lib/ndpi_main.c26
-rw-r--r--src/lib/third_party/include/binaryfusefilter.h2
3 files changed, 14 insertions, 17 deletions
diff --git a/src/lib/ndpi_domain_classify.c b/src/lib/ndpi_domain_classify.c
index c475c46f9..a289f2c41 100644
--- a/src/lib/ndpi_domain_classify.c
+++ b/src/lib/ndpi_domain_classify.c
@@ -130,6 +130,9 @@ u_int32_t ndpi_domain_classify_add_domains(ndpi_domain_classify *s,
FILE *fd;
char *line;
+ if(!s || !file_path)
+ return(false);
+
for(i=0; i<MAX_NUM_NDPI_DOMAIN_CLASSIFICATIONS; i++) {
if(s->classes[i].class_id == class_id) {
break;
diff --git a/src/lib/ndpi_main.c b/src/lib/ndpi_main.c
index 6cbbcf252..17d1cd36c 100644
--- a/src/lib/ndpi_main.c
+++ b/src/lib/ndpi_main.c
@@ -122,8 +122,6 @@
#include "nbpf.h"
#endif
-static int _ndpi_debug_callbacks = 0;
-
/* #define DGA_DEBUG 1 */
/* #define MATCH_DEBUG 1 */
@@ -5307,11 +5305,10 @@ static void ndpi_enabled_callbacks_init(struct ndpi_detection_module_struct *ndp
if(!NDPI_ISSET(dbm,ndpi_str->callback_buffer[a].ndpi_protocol_id)) continue;
if(!ndpi_proto_cb_tcp_payload(ndpi_str,a)) continue;
if(!count_only) {
- if(_ndpi_debug_callbacks)
- NDPI_LOG_DBG2(ndpi_str, "callback_buffer_tcp_payload, adding buffer %u as entry %u\n", a,
- ndpi_str->callback_buffer_size_tcp_payload);
- memcpy(&ndpi_str->callback_buffer_tcp_payload[ndpi_str->callback_buffer_size_tcp_payload],
- &ndpi_str->callback_buffer[a], sizeof(struct ndpi_call_function_struct));
+ NDPI_LOG_DBG2(ndpi_str, "callback_buffer_tcp_payload, adding buffer %u as entry %u\n", a,
+ ndpi_str->callback_buffer_size_tcp_payload);
+ memcpy(&ndpi_str->callback_buffer_tcp_payload[ndpi_str->callback_buffer_size_tcp_payload],
+ &ndpi_str->callback_buffer[a], sizeof(struct ndpi_call_function_struct));
}
ndpi_str->callback_buffer_size_tcp_payload++;
}
@@ -5319,11 +5316,10 @@ static void ndpi_enabled_callbacks_init(struct ndpi_detection_module_struct *ndp
if(!NDPI_ISSET(dbm,ndpi_str->callback_buffer[a].ndpi_protocol_id)) continue;
if(!ndpi_proto_cb_tcp_nopayload(ndpi_str,a)) continue;
if(!count_only) {
- if(_ndpi_debug_callbacks)
- NDPI_LOG_DBG2( ndpi_str,
- "\tcallback_buffer_tcp_no_payload, additional adding buffer %u to no_payload process\n", a);
- memcpy(&ndpi_str->callback_buffer_tcp_no_payload[ndpi_str->callback_buffer_size_tcp_no_payload],
- &ndpi_str->callback_buffer[a], sizeof(struct ndpi_call_function_struct));
+ NDPI_LOG_DBG2(ndpi_str,
+ "\tcallback_buffer_tcp_no_payload, additional adding buffer %u to no_payload process\n", a);
+ memcpy(&ndpi_str->callback_buffer_tcp_no_payload[ndpi_str->callback_buffer_size_tcp_no_payload],
+ &ndpi_str->callback_buffer[a], sizeof(struct ndpi_call_function_struct));
}
ndpi_str->callback_buffer_size_tcp_no_payload++;
}
@@ -5333,8 +5329,7 @@ static void ndpi_enabled_callbacks_init(struct ndpi_detection_module_struct *ndp
if(!NDPI_ISSET(dbm,ndpi_str->callback_buffer[a].ndpi_protocol_id)) continue;
if(!ndpi_proto_cb_udp(ndpi_str,a)) continue;
if(!count_only) {
- if(_ndpi_debug_callbacks)
- NDPI_LOG_DBG2(ndpi_str, "callback_buffer_size_udp: adding buffer : %u\n", a);
+ NDPI_LOG_DBG2(ndpi_str, "callback_buffer_size_udp: adding buffer : %u\n", a);
memcpy(&ndpi_str->callback_buffer_udp[ndpi_str->callback_buffer_size_udp], &ndpi_str->callback_buffer[a],
sizeof(struct ndpi_call_function_struct));
@@ -5347,8 +5342,7 @@ static void ndpi_enabled_callbacks_init(struct ndpi_detection_module_struct *ndp
if(!NDPI_ISSET(dbm,ndpi_str->callback_buffer[a].ndpi_protocol_id)) continue;
if(!ndpi_proto_cb_other(ndpi_str,a)) continue;
if(!count_only) {
- if(_ndpi_debug_callbacks)
- NDPI_LOG_DBG2(ndpi_str, "callback_buffer_non_tcp_udp: adding buffer : %u\n", a);
+ NDPI_LOG_DBG2(ndpi_str, "callback_buffer_non_tcp_udp: adding buffer : %u\n", a);
memcpy(&ndpi_str->callback_buffer_non_tcp_udp[ndpi_str->callback_buffer_size_non_tcp_udp],
&ndpi_str->callback_buffer[a], sizeof(struct ndpi_call_function_struct));
diff --git a/src/lib/third_party/include/binaryfusefilter.h b/src/lib/third_party/include/binaryfusefilter.h
index 6e2498baa..8326eb034 100644
--- a/src/lib/third_party/include/binaryfusefilter.h
+++ b/src/lib/third_party/include/binaryfusefilter.h
@@ -216,7 +216,7 @@ static inline bool binary_fuse8_allocate(uint32_t size,
filter->SegmentLength = 262144;
}
filter->SegmentLengthMask = filter->SegmentLength - 1;
- double sizeFactor = binary_fuse_calculate_size_factor(arity, size);
+ double sizeFactor = size <= 1 ? 0 : binary_fuse_calculate_size_factor(arity, size);
uint32_t capacity = size <= 1 ? 0 : (uint32_t)(round((double)size * sizeFactor));
uint32_t initSegmentCount =
(capacity + filter->SegmentLength - 1) / filter->SegmentLength -