AddressResolution::~AddressResolution() { void *res; pthread_join(resolveThreadLoop, &res); ntop->getTrace()->traceEvent(TRACE_NORMAL, "Address resolution stats [%u resolved][%u failures]", num_resolved_addresses, num_resolved_fails); if(ptree) Destroy_Patricia(ptree, free_ptree_data); }
void free_class(struct Class *tmp) { if(tmp->ip_limits) Destroy_Patricia(tmp->ip_limits, NULL); MyFree(tmp->class_name); MyFree(tmp); }
void moloch_rules_free(MolochRulesInfo_t *freeing) { int i, t, r; for (i = 0; i < MOLOCH_FIELDS_MAX; i++) { if (freeing->fieldsHash[i]) { g_hash_table_destroy(freeing->fieldsHash[i]); } if (freeing->fieldsTree4[i]) { Destroy_Patricia(freeing->fieldsTree4[i], moloch_rules_free_array); } if (freeing->fieldsTree6[i]) { Destroy_Patricia(freeing->fieldsTree6[i], moloch_rules_free_array); } } for (t = 0; t < MOLOCH_RULE_TYPE_NUM; t++) { for (r = 0; r < freeing->rulesLen[t]; r++) { MolochRule_t *rule = freeing->rules[t][r]; if (rule->bpf) g_free(rule->bpf); for (i = 0; i < MOLOCH_FIELDS_MAX; i++) { if (rule->hash[i]) { g_hash_table_destroy(rule->hash[i]); } if (rule->tree4[i]) { Destroy_Patricia(rule->tree4[i], moloch_rules_free_array); } if (rule->tree6[i]) { Destroy_Patricia(rule->tree6[i], moloch_rules_free_array); } } moloch_field_ops_free(&rule->ops); MOLOCH_TYPE_FREE(MolochRule_t, rule); } } MOLOCH_TYPE_FREE(MolochRulesInfo_t, freeing); }
Ntop::~Ntop() { for(int i=0; i<num_defined_interfaces; i++) { iface[i]->shutdown(); delete(iface[i]); } if(httpbl) delete httpbl; if(httpd) delete httpd; if(custom_ndpi_protos) delete(custom_ndpi_protos); Destroy_Patricia(local_interface_addresses, NULL); delete address; delete pa; if(geo) delete geo; if(redis) delete redis; delete globals; delete prefs; delete runtimeprefs; }
AddressTree::~AddressTree() { if(ptree) Destroy_Patricia(ptree, free_ptree_data); for(int i=0; i<numAddresses; i++) free(addressString[i]); }
void route_table_clean(struct route_table *rt) { Destroy_Patricia (rt->ipv4_table, free_ipv4_entry); Destroy_Patricia (rt->ipv6_table, free_ipv6_entry); }