From 8f7a3cbbdd0c0a48277c341dd3a8ec8743ae9735 Mon Sep 17 00:00:00 2001 From: Michael Biebl Date: Sat, 8 Sep 2018 17:44:06 +0200 Subject: New upstream version 1.13.90 --- src/nm-ip6-config.c | 49 ++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 40 insertions(+), 9 deletions(-) (limited to 'src/nm-ip6-config.c') diff --git a/src/nm-ip6-config.c b/src/nm-ip6-config.c index 9807d388..378b76d6 100644 --- a/src/nm-ip6-config.c +++ b/src/nm-ip6-config.c @@ -208,8 +208,8 @@ _notify_addresses (NMIP6Config *self) nm_clear_g_variant (&priv->address_data_variant); nm_clear_g_variant (&priv->addresses_variant); - _notify (self, PROP_ADDRESS_DATA); - _notify (self, PROP_ADDRESSES); + nm_gobject_notify_together (self, PROP_ADDRESS_DATA, + PROP_ADDRESSES); } static void @@ -220,13 +220,13 @@ _notify_routes (NMIP6Config *self) nm_assert (priv->best_default_route == _nm_ip6_config_best_default_route_find (self)); nm_clear_g_variant (&priv->route_data_variant); nm_clear_g_variant (&priv->routes_variant); - _notify (self, PROP_ROUTE_DATA); - _notify (self, PROP_ROUTES); + nm_gobject_notify_together (self, PROP_ROUTE_DATA, + PROP_ROUTES); } /*****************************************************************************/ -static gint +static int _addresses_sort_cmp_get_prio (const struct in6_addr *addr) { if (IN6_IS_ADDR_V4MAPPED (addr)) @@ -249,7 +249,7 @@ _addresses_sort_cmp (const NMPlatformIP6Address *a1, const NMPlatformIP6Address *a2, gboolean prefer_temp) { - gint p1, p2, c; + int p1, p2, c; gboolean perm1, perm2, tent1, tent2; gboolean ipv6_privacy1, ipv6_privacy2; @@ -427,6 +427,37 @@ nm_ip6_config_capture (NMDedupMultiIndex *multi_idx, NMPlatform *platform, int i return self; } +void +nm_ip6_config_update_routes_metric (NMIP6Config *self, gint64 metric) +{ + gs_free NMPlatformIP6Route *routes = NULL; + gboolean need_update = FALSE; + const NMPlatformIP6Route *r; + NMDedupMultiIter iter; + guint num = 0, i = 0; + + nm_ip_config_iter_ip6_route_for_each (&iter, self, &r) { + if (r->metric != metric) + need_update = TRUE; + num++; + } + if (!need_update) + return; + + routes = g_new (NMPlatformIP6Route, num); + nm_ip_config_iter_ip6_route_for_each (&iter, self, &r) { + routes[i] = *r; + routes[i].metric = metric; + i++; + } + + g_object_freeze_notify (G_OBJECT (self)); + nm_ip6_config_reset_routes (self); + for (i = 0; i < num; i++) + nm_ip6_config_add_route (self, &routes[i], NULL); + g_object_thaw_notify (G_OBJECT (self)); +} + void nm_ip6_config_add_dependent_routes (NMIP6Config *self, guint32 route_table, @@ -948,7 +979,7 @@ nm_ip6_config_subtract (NMIP6Config *dst, { NMIP6ConfigPrivate *dst_priv; guint i; - gint idx; + int idx; const NMPlatformIP6Address *a; const NMPlatformIP6Route *r; NMDedupMultiIter ipconf_iter; @@ -2258,7 +2289,7 @@ nm_ip6_config_get_dns_option (const NMIP6Config *self, guint i) /*****************************************************************************/ void -nm_ip6_config_set_dns_priority (NMIP6Config *self, gint priority) +nm_ip6_config_set_dns_priority (NMIP6Config *self, int priority) { NMIP6ConfigPrivate *priv = NM_IP6_CONFIG_GET_PRIVATE (self); @@ -2268,7 +2299,7 @@ nm_ip6_config_set_dns_priority (NMIP6Config *self, gint priority) } } -gint +int nm_ip6_config_get_dns_priority (const NMIP6Config *self) { const NMIP6ConfigPrivate *priv = NM_IP6_CONFIG_GET_PRIVATE (self); -- cgit 1.3.0-6-gf8a5 From e126f3e804c35480c4f075777430419d6ece23da Mon Sep 17 00:00:00 2001 From: Michael Biebl Date: Sun, 23 Sep 2018 10:10:27 +0200 Subject: New upstream version 1.12.4 --- src/nm-ip6-config.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'src/nm-ip6-config.c') diff --git a/src/nm-ip6-config.c b/src/nm-ip6-config.c index 378b76d6..3869fee8 100644 --- a/src/nm-ip6-config.c +++ b/src/nm-ip6-config.c @@ -208,8 +208,8 @@ _notify_addresses (NMIP6Config *self) nm_clear_g_variant (&priv->address_data_variant); nm_clear_g_variant (&priv->addresses_variant); - nm_gobject_notify_together (self, PROP_ADDRESS_DATA, - PROP_ADDRESSES); + _notify (self, PROP_ADDRESS_DATA); + _notify (self, PROP_ADDRESSES); } static void @@ -220,13 +220,13 @@ _notify_routes (NMIP6Config *self) nm_assert (priv->best_default_route == _nm_ip6_config_best_default_route_find (self)); nm_clear_g_variant (&priv->route_data_variant); nm_clear_g_variant (&priv->routes_variant); - nm_gobject_notify_together (self, PROP_ROUTE_DATA, - PROP_ROUTES); + _notify (self, PROP_ROUTE_DATA); + _notify (self, PROP_ROUTES); } /*****************************************************************************/ -static int +static gint _addresses_sort_cmp_get_prio (const struct in6_addr *addr) { if (IN6_IS_ADDR_V4MAPPED (addr)) @@ -249,7 +249,7 @@ _addresses_sort_cmp (const NMPlatformIP6Address *a1, const NMPlatformIP6Address *a2, gboolean prefer_temp) { - int p1, p2, c; + gint p1, p2, c; gboolean perm1, perm2, tent1, tent2; gboolean ipv6_privacy1, ipv6_privacy2; @@ -979,7 +979,7 @@ nm_ip6_config_subtract (NMIP6Config *dst, { NMIP6ConfigPrivate *dst_priv; guint i; - int idx; + gint idx; const NMPlatformIP6Address *a; const NMPlatformIP6Route *r; NMDedupMultiIter ipconf_iter; @@ -2289,7 +2289,7 @@ nm_ip6_config_get_dns_option (const NMIP6Config *self, guint i) /*****************************************************************************/ void -nm_ip6_config_set_dns_priority (NMIP6Config *self, int priority) +nm_ip6_config_set_dns_priority (NMIP6Config *self, gint priority) { NMIP6ConfigPrivate *priv = NM_IP6_CONFIG_GET_PRIVATE (self); @@ -2299,7 +2299,7 @@ nm_ip6_config_set_dns_priority (NMIP6Config *self, int priority) } } -int +gint nm_ip6_config_get_dns_priority (const NMIP6Config *self) { const NMIP6ConfigPrivate *priv = NM_IP6_CONFIG_GET_PRIVATE (self); -- cgit 1.3.0-6-gf8a5