]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network: read sysctl value only once (#12990)
authorYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 9 Jul 2019 07:56:50 +0000 (16:56 +0900)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 9 Jul 2019 07:56:50 +0000 (09:56 +0200)
Follow-up for bafa9641446852f7fa15ca12d08a223d345c78ea.

When the value is changed, networkd needs to be restarted.

src/network/networkd-link.c

index 78a8e15935db4a3ea2dcf68920252a146dc7d985..5f91d66dc09236933e9f1ce84b98d3725b138439 100644 (file)
@@ -72,6 +72,12 @@ int link_sysctl_ipv6_enabled(Link *link) {
         _cleanup_free_ char *value = NULL;
         int r;
 
+        assert(link);
+        assert(link->ifname);
+
+        if (link->sysctl_ipv6_enabled >= 0)
+                return link->sysctl_ipv6_enabled;
+
         r = sysctl_read_ip_property(AF_INET6, link->ifname, "disable_ipv6", &value);
         if (r < 0)
                 return log_link_warning_errno(link, r,