diff --git a/src/platform/nm-platform.c b/src/platform/nm-platform.c index 7460b12d7d..5a5e46467c 100644 --- a/src/platform/nm-platform.c +++ b/src/platform/nm-platform.c @@ -1604,15 +1604,20 @@ nm_platform_ip4_address_to_string (const NMPlatformIP4Address *address) static char buffer[256]; char s_address[INET_ADDRSTRLEN]; const char *s_dev; + char *str_dev; g_return_val_if_fail (address, "(unknown)"); inet_ntop (AF_INET, &address->address, s_address, sizeof (s_address)); - s_dev = address->ifindex > 0 ? nm_platform_link_get_name (address->ifindex) : NULL; - g_snprintf (buffer, sizeof (buffer), "%s/%d lft %u pref %u time %u dev %s", + s_dev = address->ifindex > 0 ? nm_platform_link_get_name (address->ifindex) : NULL; + str_dev = s_dev ? g_strconcat (" dev ", s_dev, NULL) : NULL; + + g_snprintf (buffer, sizeof (buffer), "%s/%d lft %u pref %u time %u%s", s_address, address->plen, (guint)address->lifetime, (guint)address->preferred, - (guint)address->timestamp, s_dev ? s_dev : "-"); + (guint)address->timestamp, + str_dev ? str_dev : ""); + g_free (str_dev); return buffer; } @@ -1634,15 +1639,20 @@ nm_platform_ip6_address_to_string (const NMPlatformIP6Address *address) static char buffer[256]; char s_address[INET6_ADDRSTRLEN]; const char *s_dev; + char *str_dev; g_return_val_if_fail (address, "(unknown)"); inet_ntop (AF_INET6, &address->address, s_address, sizeof (s_address)); - s_dev = address->ifindex > 0 ? nm_platform_link_get_name (address->ifindex) : NULL; - g_snprintf (buffer, sizeof (buffer), "%s/%d lft %u pref %u time %u dev %s", + s_dev = address->ifindex > 0 ? nm_platform_link_get_name (address->ifindex) : NULL; + str_dev = s_dev ? g_strconcat (" dev ", s_dev, NULL) : NULL; + + g_snprintf (buffer, sizeof (buffer), "%s/%d lft %u pref %u time %u%s", s_address, address->plen, (guint)address->lifetime, (guint)address->preferred, - (guint)address->timestamp, s_dev ? s_dev : "-"); + (guint)address->timestamp, + str_dev ? str_dev : ""); + g_free (str_dev); return buffer; } @@ -1664,16 +1674,21 @@ nm_platform_ip4_route_to_string (const NMPlatformIP4Route *route) static char buffer[256]; char s_network[INET_ADDRSTRLEN], s_gateway[INET_ADDRSTRLEN]; const char *s_dev; + char *str_dev; g_return_val_if_fail (route, "(unknown)"); inet_ntop (AF_INET, &route->network, s_network, sizeof(s_network)); inet_ntop (AF_INET, &route->gateway, s_gateway, sizeof(s_gateway)); - s_dev = route->ifindex > 0 ? nm_platform_link_get_name (route->ifindex) : NULL; - g_snprintf (buffer, sizeof (buffer), "%s/%d via %s dev %s metric %u mss %u", - s_network, route->plen, s_gateway, s_dev ? s_dev : "-", + s_dev = route->ifindex > 0 ? nm_platform_link_get_name (route->ifindex) : NULL; + str_dev = s_dev ? g_strconcat (" dev ", s_dev, NULL) : NULL; + + g_snprintf (buffer, sizeof (buffer), "%s/%d via %s%s metric %u mss %u", + s_network, route->plen, s_gateway, + str_dev ? str_dev : "", route->metric, route->mss); + g_free (str_dev); return buffer; } @@ -1695,16 +1710,21 @@ nm_platform_ip6_route_to_string (const NMPlatformIP6Route *route) static char buffer[256]; char s_network[INET6_ADDRSTRLEN], s_gateway[INET6_ADDRSTRLEN]; const char *s_dev; + char *str_dev; g_return_val_if_fail (route, "(unknown)"); inet_ntop (AF_INET6, &route->network, s_network, sizeof(s_network)); inet_ntop (AF_INET6, &route->gateway, s_gateway, sizeof(s_gateway)); - s_dev = route->ifindex > 0 ? nm_platform_link_get_name (route->ifindex) : NULL; - g_snprintf (buffer, sizeof (buffer), "%s/%d via %s dev %s metric %u mss %u", - s_network, route->plen, s_gateway, s_dev ? s_dev : "-", + s_dev = route->ifindex > 0 ? nm_platform_link_get_name (route->ifindex) : NULL; + str_dev = s_dev ? g_strconcat (" dev ", s_dev, NULL) : NULL; + + g_snprintf (buffer, sizeof (buffer), "%s/%d via %s%s metric %u mss %u", + s_network, route->plen, s_gateway, + str_dev ? str_dev : "", route->metric, route->mss); + g_free (str_dev); return buffer; }