chiark / gitweb /
networkd: link - do not manage loopback links
authorTom Gundersen <teg@jklm.no>
Thu, 4 Sep 2014 11:40:24 +0000 (13:40 +0200)
committerTom Gundersen <teg@jklm.no>
Thu, 4 Sep 2014 12:16:25 +0000 (14:16 +0200)
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=83134.

TODO
src/network/networkd-link.c

diff --git a/TODO b/TODO
index f0f2bcb..380fd49 100644 (file)
--- 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
index 1b7b189..f726e2b 100644 (file)
@@ -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;