aboutsummaryrefslogtreecommitdiff
path: root/src/lib/protocols/tor.c
diff options
context:
space:
mode:
authorDaniele De Lorenzi <daniele.delorenzi@fastnetserv.net>2018-12-20 11:04:03 +0100
committerGitHub <noreply@github.com>2018-12-20 11:04:03 +0100
commit2aea4da9adc3ba87346d01d20bd815004016db4f (patch)
tree91c94e1645640407f32e0cf5b1097444f6f26271 /src/lib/protocols/tor.c
parent3b1047b0c8136b85010554ac31f7845c68b5898b (diff)
parentd3be349fa0d03477be1c84fad23fcc37df9bcf67 (diff)
Merge pull request #10 from ntop/dev
Repo sync
Diffstat (limited to 'src/lib/protocols/tor.c')
-rw-r--r--src/lib/protocols/tor.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/lib/protocols/tor.c b/src/lib/protocols/tor.c
index 462833db0..f1c6f586a 100644
--- a/src/lib/protocols/tor.c
+++ b/src/lib/protocols/tor.c
@@ -1,14 +1,12 @@
/*
* tor.c
*
- * Copyright (C) 2016 ntop.org
+ * Copyright (C) 2016-18 ntop.org
* Copyright (C) 2013 Remy Mudingay <mudingay@ill.fr>
*
*/
#include "ndpi_protocol_ids.h"
-#ifdef NDPI_PROTOCOL_TOR
-
#define NDPI_CURRENT_PROTO NDPI_PROTOCOL_TOR
#include "ndpi_api.h"
@@ -22,7 +20,7 @@ static void ndpi_int_tor_add_connection(struct ndpi_detection_module_struct
int ndpi_is_ssl_tor(struct ndpi_detection_module_struct *ndpi_struct,
struct ndpi_flow_struct *flow, char *certificate) {
- int prev_num = 0, numbers_found = 0, num_found = 0, i, len;
+ int prev_num = 0, numbers_found = 0, num_found = 0, i, len, num_impossible = 0;
char dummy[48], *dot, *name;
if(certificate == NULL)
@@ -73,12 +71,11 @@ int ndpi_is_ssl_tor(struct ndpi_detection_module_struct *ndpi_struct,
if(ndpi_match_bigram(ndpi_struct, &ndpi_struct->bigrams_automa, &name[i])) {
num_found++;
} else if(ndpi_match_bigram(ndpi_struct, &ndpi_struct->impossible_bigrams_automa, &name[i])) {
- ndpi_int_tor_add_connection(ndpi_struct, flow);
- return(1);
+ num_impossible++;
}
}
- if(num_found == 0) {
+ if((num_found == 0) || (num_impossible > 1)) {
ndpi_int_tor_add_connection(ndpi_struct, flow);
return(1);
} else {
@@ -133,4 +130,3 @@ void init_tor_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int3
*id += 1;
}
-#endif