libsystemd-network: use DEFINE_ARRAY_FREE_FUNC, rename cleanup func
This commit is contained in:
@@ -34,4 +34,4 @@ int dns_resolvers_to_dot_strv(const sd_dns_resolver *resolvers, size_t n_resolve
|
||||
|
||||
void sd_dns_resolver_done(sd_dns_resolver *res);
|
||||
|
||||
void dns_resolver_done_many(sd_dns_resolver *resolvers, size_t n);
|
||||
void dns_resolver_free_array(sd_dns_resolver *array, size_t n);
|
||||
|
||||
@@ -169,7 +169,7 @@ int deserialize_dnr(sd_dns_resolver **ret, const char *string) {
|
||||
|
||||
sd_dns_resolver *dnr = NULL;
|
||||
size_t n = 0;
|
||||
CLEANUP_ARRAY(dnr, n, dns_resolver_done_many);
|
||||
CLEANUP_ARRAY(dnr, n, dns_resolver_free_array);
|
||||
int priority = 0;
|
||||
|
||||
for (;;) {
|
||||
|
||||
@@ -434,7 +434,7 @@ static sd_dhcp_lease *dhcp_lease_free(sd_dhcp_lease *lease) {
|
||||
for (sd_dhcp_lease_server_type_t i = 0; i < _SD_DHCP_LEASE_SERVER_TYPE_MAX; i++)
|
||||
free(lease->servers[i].addr);
|
||||
|
||||
dns_resolver_done_many(lease->dnr, lease->n_dnr);
|
||||
dns_resolver_free_array(lease->dnr, lease->n_dnr);
|
||||
free(lease->static_routes);
|
||||
free(lease->classless_routes);
|
||||
free(lease->vendor_specific);
|
||||
@@ -642,7 +642,7 @@ static int lease_parse_dnr(const uint8_t *option, size_t len, sd_dns_resolver **
|
||||
int r;
|
||||
sd_dns_resolver *res_list = NULL;
|
||||
size_t n_resolvers = 0;
|
||||
CLEANUP_ARRAY(res_list, n_resolvers, dns_resolver_done_many);
|
||||
CLEANUP_ARRAY(res_list, n_resolvers, dns_resolver_free_array);
|
||||
|
||||
assert(option || len == 0);
|
||||
assert(dnr);
|
||||
@@ -747,7 +747,7 @@ static int lease_parse_dnr(const uint8_t *option, size_t len, sd_dns_resolver **
|
||||
|
||||
typesafe_qsort(res_list, n_resolvers, dns_resolver_prio_compare);
|
||||
|
||||
dns_resolver_done_many(*dnr, *n_dnr);
|
||||
dns_resolver_free_array(*dnr, *n_dnr);
|
||||
*dnr = TAKE_PTR(res_list);
|
||||
*n_dnr = n_resolvers;
|
||||
|
||||
|
||||
@@ -1076,7 +1076,7 @@ static sd_dhcp6_lease *dhcp6_lease_free(sd_dhcp6_lease *lease) {
|
||||
dhcp6_ia_free(lease->ia_na);
|
||||
dhcp6_ia_free(lease->ia_pd);
|
||||
free(lease->dns);
|
||||
dns_resolver_done_many(lease->dnr, lease->n_dnr);
|
||||
dns_resolver_free_array(lease->dnr, lease->n_dnr);
|
||||
free(lease->fqdn);
|
||||
free(lease->captive_portal);
|
||||
strv_free(lease->domains);
|
||||
|
||||
@@ -26,14 +26,7 @@ sd_dns_resolver *sd_dns_resolver_unref(sd_dns_resolver *res) {
|
||||
return mfree(res);
|
||||
}
|
||||
|
||||
void dns_resolver_done_many(sd_dns_resolver resolvers[], size_t n) {
|
||||
assert(resolvers || n == 0);
|
||||
|
||||
FOREACH_ARRAY(res, resolvers, n)
|
||||
sd_dns_resolver_done(res);
|
||||
|
||||
free(resolvers);
|
||||
}
|
||||
DEFINE_ARRAY_FREE_FUNC(dns_resolver_free_array, sd_dns_resolver, sd_dns_resolver_done);
|
||||
|
||||
int dns_resolver_prio_compare(const sd_dns_resolver *a, const sd_dns_resolver *b) {
|
||||
return CMP(ASSERT_PTR(a)->priority, ASSERT_PTR(b)->priority);
|
||||
|
||||
Reference in New Issue
Block a user