From adf8982d8ec8a1f84bdf48b0129f5fccbb12e51b Mon Sep 17 00:00:00 2001 From: Ivan Nardi <12729895+IvanNardi@users.noreply.github.com> Date: Mon, 11 Dec 2023 12:48:50 +0100 Subject: fuzz: extend fuzzing coverage (#2205) --- src/lib/ndpi_analyze.c | 107 +++++++++++++++++++++++++++--------------------- src/lib/protocols/tls.c | 3 -- 2 files changed, 60 insertions(+), 50 deletions(-) (limited to 'src/lib') diff --git a/src/lib/ndpi_analyze.c b/src/lib/ndpi_analyze.c index 7cb6b368c..bb0b74fd4 100644 --- a/src/lib/ndpi_analyze.c +++ b/src/lib/ndpi_analyze.c @@ -708,6 +708,7 @@ float ndpi_bin_similarity(struct ndpi_bin *b1, struct ndpi_bin *b2, /* ********************************************************************************* */ +//#define DEBUG_CLUSTER_BINS #define MAX_NUM_CLUSTERS 128 /* @@ -723,7 +724,7 @@ int ndpi_cluster_bins(struct ndpi_bin *bins, u_int16_t num_bins, u_int8_t num_clusters, u_int16_t *cluster_ids, struct ndpi_bin *centroids) { u_int16_t i, j, max_iterations = 25, num_iterations, num_moves; - u_int8_t verbose = 0, alloc_centroids = 0; + u_int8_t alloc_centroids = 0; char out_buf[256]; float *bin_score; u_int16_t num_cluster_elems[MAX_NUM_CLUSTERS] = { 0 }; @@ -737,8 +738,9 @@ int ndpi_cluster_bins(struct ndpi_bin *bins, u_int16_t num_bins, if(num_clusters > num_bins) num_clusters = num_bins; if(num_clusters > MAX_NUM_CLUSTERS) num_clusters = MAX_NUM_CLUSTERS; - if(verbose) - printf("Distributing %u bins over %u clusters\n", num_bins, num_clusters); +#ifdef DEBUG_CLUSTER_BINS + printf("Distributing %u bins over %u clusters\n", num_bins, num_clusters); +#endif if((bin_score = (float*)ndpi_calloc(num_bins, sizeof(float))) == NULL) return(-2); @@ -764,10 +766,11 @@ int ndpi_cluster_bins(struct ndpi_bin *bins, u_int16_t num_bins, cluster_ids[i] = cluster_id; - if(verbose) - printf("Initializing cluster %u for bin %u: %s\n", - cluster_id, i, - ndpi_print_bin(&bins[i], 0, out_buf, sizeof(out_buf))); +#ifdef DEBUG_CLUSTER_BINS + printf("Initializing cluster %u for bin %u: %s\n", + cluster_id, i, + ndpi_print_bin(&bins[i], 0, out_buf, sizeof(out_buf))); +#endif num_cluster_elems[cluster_id]++; } @@ -780,12 +783,12 @@ int ndpi_cluster_bins(struct ndpi_bin *bins, u_int16_t num_bins, /* Compute the centroids for each cluster */ memset(bin_score, 0, num_bins*sizeof(float)); - if(verbose) { - printf("\nIteration %u\n", num_iterations); +#ifdef DEBUG_CLUSTER_BINS + printf("\nIteration %u\n", num_iterations); - for(j=0; j best_similarity) { @@ -857,9 +863,10 @@ int ndpi_cluster_bins(struct ndpi_bin *bins, u_int16_t num_bins, bin_score[i] = best_similarity; if(cluster_ids[i] != cluster_id) { - if(verbose) - printf("Moved bin %u from cluster %u -> %u [similarity: %f]\n", - i, cluster_ids[i], cluster_id, best_similarity); +#ifdef DEBUG_CLUSTER_BINS + printf("Moved bin %u from cluster %u -> %u [similarity: %f]\n", + i, cluster_ids[i], cluster_id, best_similarity); +#endif num_cluster_elems[cluster_ids[i]]--; num_cluster_elems[cluster_id]++; @@ -872,10 +879,10 @@ int ndpi_cluster_bins(struct ndpi_bin *bins, u_int16_t num_bins, if(num_moves == 0) break; - if(verbose) { - for(j=0; jprotos.tls_quic.advertised_alpns) - return; - if(strlen(flow->protos.tls_quic.advertised_alpns) > NDPI_STATICSTRING_LEN("anydesk/") && strncmp(flow->protos.tls_quic.advertised_alpns, "anydesk/", NDPI_STATICSTRING_LEN("anydesk/")) == 0) { #ifdef DEBUG_TLS -- cgit v1.2.3