]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network: move link_request_set_neighbors() to networkd-neighbor.c
authorYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 29 Sep 2020 14:17:43 +0000 (23:17 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 6 Oct 2020 17:44:42 +0000 (02:44 +0900)
src/network/networkd-link.c
src/network/networkd-neighbor.c
src/network/networkd-neighbor.h

index e5d51f1572905d1ac15ee0b8647e51294cc62527..6df7ce74a0122c255e047ac02f29982d53616d8c 100644 (file)
@@ -1131,33 +1131,6 @@ void link_check_ready(Link *link) {
         return;
 }
 
-static int link_request_set_neighbors(Link *link) {
-        Neighbor *neighbor;
-        int r;
-
-        assert(link);
-        assert(link->network);
-        assert(link->state != _LINK_STATE_INVALID);
-
-        link->neighbors_configured = false;
-
-        LIST_FOREACH(neighbors, neighbor, link->network->neighbors) {
-                r = neighbor_configure(neighbor, link, NULL);
-                if (r < 0)
-                        return log_link_warning_errno(link, r, "Could not set neighbor: %m");
-        }
-
-        if (link->neighbor_messages == 0) {
-                link->neighbors_configured = true;
-                link_check_ready(link);
-        } else {
-                log_link_debug(link, "Setting neighbors");
-                link_set_state(link, LINK_STATE_CONFIGURING);
-        }
-
-        return 0;
-}
-
 static int link_set_bridge_fdb(Link *link) {
         FdbEntry *fdb_entry;
         int r;
@@ -1307,7 +1280,7 @@ static int link_request_set_addresses(Link *link) {
         if (r < 0)
                 return r;
 
-        r = link_request_set_neighbors(link);
+        r = link_set_neighbors(link);
         if (r < 0)
                 return r;
 
index 26ef94328fb0d1eec0870b4250d5f361366c3f2f..b9c149121c862a81c3c223219ad5d54fef3bc4f9 100644 (file)
@@ -310,6 +310,33 @@ int neighbor_configure(Neighbor *neighbor, Link *link, link_netlink_message_hand
         return 0;
 }
 
+int link_set_neighbors(Link *link) {
+        Neighbor *neighbor;
+        int r;
+
+        assert(link);
+        assert(link->network);
+        assert(link->state != _LINK_STATE_INVALID);
+
+        link->neighbors_configured = false;
+
+        LIST_FOREACH(neighbors, neighbor, link->network->neighbors) {
+                r = neighbor_configure(neighbor, link, NULL);
+                if (r < 0)
+                        return log_link_warning_errno(link, r, "Could not set neighbor: %m");
+        }
+
+        if (link->neighbor_messages == 0) {
+                link->neighbors_configured = true;
+                link_check_ready(link);
+        } else {
+                log_link_debug(link, "Setting neighbors");
+                link_set_state(link, LINK_STATE_CONFIGURING);
+        }
+
+        return 0;
+}
+
 static int neighbor_remove_handler(sd_netlink *rtnl, sd_netlink_message *m, Link *link) {
         int r;
 
index 97ee1f6d73ea4931815dc7e7d431fdbbb6ddf475..bba59f02272fcb1c8f6e020c801546e0857437fa 100644 (file)
@@ -47,6 +47,8 @@ bool neighbor_equal(const Neighbor *n1, const Neighbor *n2);
 
 int neighbor_section_verify(Neighbor *neighbor);
 
+int link_set_neighbors(Link *link);
+
 CONFIG_PARSER_PROTOTYPE(config_parse_neighbor_address);
 CONFIG_PARSER_PROTOTYPE(config_parse_neighbor_hwaddr);
 CONFIG_PARSER_PROTOTYPE(config_parse_neighbor_lladdr);