summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Gundersen <teg@jklm.no>2014-09-04 13:40:24 +0200
committerTom Gundersen <teg@jklm.no>2014-09-04 14:16:25 +0200
commitbd2efe9219a3791b47c2c5c2ef0fe2579ffd547d (patch)
treebe33c103925aa701cd5322fda3c1b8e05715a4a6
parent51d18171529dcdad1366e422e42d538434af0ff6 (diff)
networkd: link - do not manage loopback links
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=83134.
-rw-r--r--TODO3
-rw-r--r--src/network/networkd-link.c6
2 files changed, 6 insertions, 3 deletions
diff --git a/TODO b/TODO
index f0f2bcb12d..380fd494f2 100644
--- a/TODO
+++ b/TODO
@@ -78,9 +78,6 @@ Features:
- ipv4ll with multiple interfaces doesn't work when both dhcp and
ipv4ll is used. for some reasons the kernel will currently pick an
ipv4ll source address to reach non-ipv4ll gateways.
- - dhcp and ipv4ll should probably be skipped for "lo" devices, even
- if the user has a catchall .network file installed, that might
- theoretically match it.
- the DHCP lease data (such as NTP/DNS) is still made available when
a carrier is lost on a link. It should be removed instantly.
- .network setting that allows overriding of the hostname to send to the dhcp server
diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
index 1b7b1898c4..f726e2b570 100644
--- a/src/network/networkd-link.c
+++ b/src/network/networkd-link.c
@@ -1250,6 +1250,12 @@ static int link_initialized_and_synced(sd_rtnl *rtnl, sd_rtnl_message *m,
} else if (r < 0)
return r;
+ if (link->flags & IFF_LOOPBACK) {
+ log_debug_link(link, "matching network ignored for loopback link");
+ link_enter_unmanaged(link);
+ return 1;
+ }
+
r = network_apply(link->manager, network, link);
if (r < 0)
return r;