- log_struct_link(LOG_WARNING, link,
- "MESSAGE=%-*s: could not drop address: %s",
+ log_link_warning_errno(link, -r, "%-*s: could not drop address: %m", IFNAMSIZ, link->ifname);
+
+ return 1;
+}
+
+static int link_set_bridge_fdb(const Link *const link) {
+ FdbEntry *fdb_entry;
+ int r = 0;
+
+ LIST_FOREACH(static_fdb_entries, fdb_entry, link->network->static_fdb_entries) {
+ r = fdb_entry_configure(link->manager->rtnl, fdb_entry, link->ifindex);
+ if(r < 0) {
+ log_link_error(link, "Failed to add MAC entry to static MAC table: %s", strerror(-r));
+ break;
+ }
+ }
+
+ return r;
+}
+
+static int link_set_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
+ _cleanup_link_unref_ Link *link = userdata;
+ int r;
+
+ log_link_debug(link, "set link");
+
+ r = sd_rtnl_message_get_errno(m);
+ if (r < 0 && r != -EEXIST) {
+ log_link_struct(link, LOG_ERR,
+ "MESSAGE=%-*s: could not join netdev: %s",