aboutsummaryrefslogtreecommitdiff
path: root/example/ndpiReader.c
diff options
context:
space:
mode:
authorLuca Deri <deri@ntop.org>2019-07-22 21:42:55 +0200
committerLuca Deri <deri@ntop.org>2019-07-22 21:42:55 +0200
commitdb36294dcb01020e4e9677bd9395528796466deb (patch)
treea292837024bada8e1f311fbbb763e80949fa685f /example/ndpiReader.c
parentb13780c6e091eb08aed2efd4b3d0ebd60c9ffb92 (diff)
Warnign fix
Diffstat (limited to 'example/ndpiReader.c')
-rw-r--r--example/ndpiReader.c53
1 files changed, 19 insertions, 34 deletions
diff --git a/example/ndpiReader.c b/example/ndpiReader.c
index ea7583494..e5c031865 100644
--- a/example/ndpiReader.c
+++ b/example/ndpiReader.c
@@ -3168,18 +3168,16 @@ void bpf_filter_pkt_peak_filter(json_object **jObj_bpfFilter,
int sh_size,
const char *dst_host_array[16],
int dh_size) {
- char filter[2048];
+ char filter[2048] = { '\0' };
int produced = 0;
- int i = 0;
+ int i = 0, l = 0;
if(port_array[0] != INIT_VAL) {
- int l;
-
strcpy(filter, "not (src port ");
+ l = strlen(filter);
+
while(i < p_size && port_array[i] != INIT_VAL) {
- l = strlen(filter);
-
if(i+1 == p_size || port_array[i+1] == INIT_VAL)
snprintf(&filter[l], sizeof(filter)-l, "%d", port_array[i]);
else
@@ -3188,66 +3186,53 @@ void bpf_filter_pkt_peak_filter(json_object **jObj_bpfFilter,
i++;
}
- l = strlen(filter);
- snprintf(&filter[l], sizeof(filter)-l, "%s", ")");
+ l += snprintf(&filter[l], sizeof(filter)-l, "%s", ")");
produced = 1;
}
if(src_host_array[0] != NULL) {
- int l;
-
if(port_array[0] != INIT_VAL)
- strncat(filter, " and not (src ", sizeof(filter)-strlen(filter));
+ l += snprintf(&filter[l], sizeof(filter)-l, " and not (src ");
else
- strcpy(filter, "not (src ");
+ l += snprintf(&filter[l], sizeof(filter)-l, "not (src ");
+
+ i = 0;
- i=0;
while(i < sh_size && src_host_array[i] != NULL) {
- l = strlen(filter);
-
if(i+1 == sh_size || src_host_array[i+1] == NULL)
- snprintf(&filter[l], sizeof(filter)-l, "%s", src_host_array[i]);
+ l += snprintf(&filter[l], sizeof(filter)-l, "%s", src_host_array[i]);
else
- snprintf(&filter[l], sizeof(filter)-l, "%s or ", src_host_array[i]);
+ l += snprintf(&filter[l], sizeof(filter)-l, "%s or ", src_host_array[i]);
i++;
}
-
- l = strlen(filter);
- snprintf(&filter[l], sizeof(filter)-l, "%s", ")");
+
+ l += snprintf(&filter[l], sizeof(filter)-l, "%s", ")");
produced = 1;
}
-
if(dst_host_array[0] != NULL) {
- int l;
-
if(port_array[0] != INIT_VAL || src_host_array[0] != NULL)
- strncat(filter, " and not (dst ", sizeof(filter)-strlen(filter));
+ l += snprintf(&filter[l], sizeof(filter)-l, " and not (dst ");
else
- strcpy(filter, "not (dst ");
+ l += snprintf(&filter[l], sizeof(filter)-l, "not (dst ");
i=0;
- while(i < dh_size && dst_host_array[i] != NULL) {
- l = strlen(filter);
-
+ while(i < dh_size && dst_host_array[i] != NULL) {
if(i+1 == dh_size || dst_host_array[i+1] == NULL)
- snprintf(&filter[l], sizeof(filter)-l, "%s", dst_host_array[i]);
+ l += snprintf(&filter[l], sizeof(filter)-l, "%s", dst_host_array[i]);
else
- snprintf(&filter[l], sizeof(filter)-l, "%s or ", dst_host_array[i]);
+ l += snprintf(&filter[l], sizeof(filter)-l, "%s or ", dst_host_array[i]);
i++;
}
- l = strlen(filter);
- snprintf(&filter[l], sizeof(filter)-l, "%s", ")");
+ l += snprintf(&filter[l], sizeof(filter)-l, "%s", ")");
produced = 1;
}
-
-
if(produced)
json_object_object_add(*jObj_bpfFilter, "pkt.peak.filter", json_object_new_string(filter));
else