mirror of
https://github.com/systemd/systemd-stable.git
synced 2024-12-23 17:34:00 +03:00
resolved: count the number of addresses per link
This becomes handy later on. Moreover, we keep track of similar counters for other objects like this too, hence adding this here too is obvious.
This commit is contained in:
parent
4a46ed1bc6
commit
bceaa99d49
@ -669,6 +669,7 @@ int link_address_new(Link *l, LinkAddress **ret, int family, const union in_addr
|
||||
|
||||
a->link = l;
|
||||
LIST_PREPEND(addresses, l->addresses, a);
|
||||
l->n_addresses++;
|
||||
|
||||
if (ret)
|
||||
*ret = a;
|
||||
@ -683,6 +684,9 @@ LinkAddress *link_address_free(LinkAddress *a) {
|
||||
if (a->link) {
|
||||
LIST_REMOVE(addresses, a->link->addresses, a);
|
||||
|
||||
assert(a->link->n_addresses > 0);
|
||||
a->link->n_addresses--;
|
||||
|
||||
if (a->llmnr_address_rr) {
|
||||
if (a->family == AF_INET && a->link->llmnr_ipv4_scope)
|
||||
dns_zone_remove_rr(&a->link->llmnr_ipv4_scope->zone, a->llmnr_address_rr);
|
||||
|
@ -60,6 +60,7 @@ struct Link {
|
||||
unsigned flags;
|
||||
|
||||
LIST_HEAD(LinkAddress, addresses);
|
||||
unsigned n_addresses;
|
||||
|
||||
LIST_HEAD(DnsServer, dns_servers);
|
||||
DnsServer *current_dns_server;
|
||||
|
Loading…
Reference in New Issue
Block a user