From: Susant Sahani Date: Wed, 24 Jan 2018 09:17:07 +0000 (+0530) Subject: networkd: sd_ndisc reset mac address when MAC address change detected. X-Git-Tag: v237~36 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=420d2058674b8f0edb6c135c125df0781b87d964;p=thirdparty%2Fsystemd.git networkd: sd_ndisc reset mac address when MAC address change detected. When there is a change in mac address we are not currently not changing the MAC address and resulting v6 connectivity is gone. When kernel reports a change in mac address change the MAC of ndisc client too. Closes # 7806 --- diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index 2bdb5852a25..616f14b9463 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -3317,6 +3317,12 @@ int link_update(Link *link, sd_netlink_message *m) { if (r < 0) return log_link_warning_errno(link, r, "Could not update MAC for Router Advertisement: %m"); } + + if (link->ndisc) { + r = sd_ndisc_set_mac(link->ndisc, &link->mac); + if (r < 0) + return log_link_warning_errno(link, r, "Could not update MAC for ndisc: %m"); + } } }