/** * Discard IPv4 set from database. */ void iprange_reset_ipv4(struct iprange_db *idb) { iprange_db_check(idb); sorted_array_free(&idb->tab4); idb->tab4 = sorted_array_new(sizeof(struct iprange_net4), iprange_net4_cmp); idb->tab4_unsorted = FALSE; }
/** * Discard IPv6 set from database. */ void iprange_reset_ipv6(struct iprange_db *idb) { iprange_db_check(idb); sorted_array_free(&idb->tab6); idb->tab6 = sorted_array_new(sizeof(struct iprange_net6), iprange_net6_cmp); idb->tab6_unsorted = FALSE; }
/** * Create a new IP range database. */ struct iprange_db * iprange_new(void) { static const struct iprange_db zero_idb; struct iprange_db *idb; WALLOC(idb); *idb = zero_idb; idb->magic = IPRANGE_DB_MAGIC; idb->tab = sorted_array_new(sizeof(struct iprange_net), iprange_net_cmp); return idb; }