X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fnetwork%2Fnetworkd-network.c;h=7be9645d594ebd8ac73801dceaea5e849d9542e2;hp=69c55edb8fe3ef588bb5d13a45a3817cb332c581;hb=5a3eb5a77d7c491a31818c4dfdcf8fd7dcaaadb2;hpb=f579559b3a14c1f1ef96c372e7626c4733e6ef7d diff --git a/src/network/networkd-network.c b/src/network/networkd-network.c index 69c55edb8..7be9645d5 100644 --- a/src/network/networkd-network.c +++ b/src/network/networkd-network.c @@ -42,6 +42,8 @@ static int network_load_one(Manager *manager, const char *filename) { if (!network) return log_oom(); + network->manager = manager; + LIST_HEAD_INIT(network->addresses); r = config_parse(NULL, filename, file, "Match\0Network\0", config_item_perf_lookup, @@ -157,8 +159,6 @@ int network_get(Manager *manager, struct udev_device *device, Network **ret) { } int network_apply(Manager *manager, Network *network, Link *link) { - Address *address; - Route *route; int r; log_info("Network '%s' being applied to link '%u'", @@ -166,21 +166,9 @@ int network_apply(Manager *manager, Network *network, Link *link) { link->network = network; - LIST_FOREACH(addresses, address, network->addresses) { - r = address_configure(manager, address, link); - if (r < 0) - return r; - } - - r = link_up(manager, link); + r = link_configure(link); if (r < 0) return r; - LIST_FOREACH(routes, route, network->routes) { - r = route_configure(manager, route, link); - if (r < 0) - return r; - } - return 0; }