From: Yu Watanabe Date: Tue, 29 Sep 2020 17:09:28 +0000 (+0900) Subject: network: introduce network_verify_fdb_entries() X-Git-Tag: v247-rc1~117^2~88 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e6ad630d774054d93648be5e618bd0bfab2e6720;p=thirdparty%2Fsystemd.git network: introduce network_verify_fdb_entries() --- diff --git a/src/network/networkd-fdb.c b/src/network/networkd-fdb.c index 792e02a066f..05fd07c374b 100644 --- a/src/network/networkd-fdb.c +++ b/src/network/networkd-fdb.c @@ -195,6 +195,16 @@ int link_set_bridge_fdb(Link *link) { return 0; } +void network_verify_fdb_entries(Network *network) { + FdbEntry *fdb_entry; + + assert(network); + + HASHMAP_FOREACH(fdb_entry, network->fdb_entries_by_section) + if (section_is_invalid(fdb_entry->section)) + fdb_entry_free(fdb_entry); +} + /* parse the HW address from config files. */ int config_parse_fdb_hwaddr( const char *unit, diff --git a/src/network/networkd-fdb.h b/src/network/networkd-fdb.h index faddcf604e0..39e016e8677 100644 --- a/src/network/networkd-fdb.h +++ b/src/network/networkd-fdb.h @@ -43,6 +43,8 @@ struct FdbEntry { FdbEntry *fdb_entry_free(FdbEntry *fdb_entry); +void network_verify_fdb_entries(Network *network); + int link_set_bridge_fdb(Link *link); const char* fdb_ntf_flags_to_string(NeighborCacheEntryFlags i) _const_; diff --git a/src/network/networkd-network.c b/src/network/networkd-network.c index 149c3cf2d31..a8c32b96289 100644 --- a/src/network/networkd-network.c +++ b/src/network/networkd-network.c @@ -156,7 +156,6 @@ int network_verify(Network *network) { Address *address, *address_next; Prefix *prefix, *prefix_next; Route *route, *route_next; - FdbEntry *fdb; MdbEntry *mdb, *mdb_next; TrafficControl *tc; SRIOV *sr_iov; @@ -299,10 +298,7 @@ int network_verify(Network *network) { route_free(route); network_verify_nexthops(network); - - HASHMAP_FOREACH(fdb, network->fdb_entries_by_section) - if (section_is_invalid(fdb->section)) - fdb_entry_free(fdb); + network_verify_fdb_entries(network); LIST_FOREACH_SAFE(static_mdb_entries, mdb, mdb_next, network->static_mdb_entries) if (mdb_entry_verify(mdb) < 0)