From 653a0efb43cce934fffa89cdb0ad93945ec37249 Mon Sep 17 00:00:00 2001 From: Beniamino Galvani Date: Sat, 6 May 2017 10:56:21 +0200 Subject: wip --- src/devices/nm-device.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c index 0363317302..89a94edc96 100644 --- a/src/devices/nm-device.c +++ b/src/devices/nm-device.c @@ -6832,7 +6832,8 @@ linklocal6_complete (NMDevice *self) const char *method; g_assert (priv->linklocal6_timeout_id); - g_assert (nm_ip6_config_get_address_first_nontentative (priv->ip6_config, TRUE)); + g_assert (priv->ext_ip6_config_captured); + g_assert (nm_ip6_config_get_address_first_nontentative (priv->ext_ip6_config_captured, TRUE)); linklocal6_cleanup (self); @@ -6956,8 +6957,8 @@ linklocal6_start (NMDevice *self) linklocal6_cleanup (self); - if ( priv->ip6_config - && nm_ip6_config_get_address_first_nontentative (priv->ip6_config, TRUE)) + if ( priv->ext_ip6_config_captured + && nm_ip6_config_get_address_first_nontentative (priv->ext_ip6_config_captured, TRUE)) return NM_ACT_STAGE_RETURN_SUCCESS; connection = nm_device_get_applied_connection (self); @@ -7718,6 +7719,13 @@ act_stage3_ip6_config_start (NMDevice *self, /* Re-enable IPv6 on the interface */ set_disable_ipv6 (self, "0"); + nm_platform_process_events (nm_device_get_platform (self)); + g_clear_object (&priv->ext_ip6_config_captured); + priv->ext_ip6_config_captured = nm_ip6_config_capture (nm_device_get_platform (self), + nm_device_get_ifindex (self), + FALSE, + NM_SETTING_IP6_CONFIG_PRIVACY_UNKNOWN); + ip6_privacy = _ip6_privacy_get (self); if ( strcmp (method, NM_SETTING_IP6_CONFIG_METHOD_AUTO) == 0 -- cgit v1.2.1