diff options
author | Thomas Haller <thaller@redhat.com> | 2017-07-27 06:58:44 +0200 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2017-08-03 18:33:00 +0200 |
commit | 19a709069a7fc7b833e3136fd556ac7be86bfead (patch) | |
tree | a515b7e1d184ab292ea7ee39c2b1269827f05a79 | |
parent | bf348cde694d87a2862abf52491e6df6718e8b42 (diff) | |
download | NetworkManager-19a709069a7fc7b833e3136fd556ac7be86bfead.tar.gz |
platform: print lock paramters of route
It is valid to set "lock" for a property with numeric value 0.
# ip route append 192.168.7.0/24 dev bond0 window lock 0
# ip route append 192.168.7.0/24 dev bond0 window 0
# ip route append 192.168.7.0/24 dev bond0 window lock 10
# ip route append 192.168.7.0/24 dev bond0 window 10
# ip -4 -d route show dev bond0
unicast 192.168.7.0/24 proto boot scope link linkdown
unicast 192.168.7.0/24 proto boot scope link linkdown
unicast 192.168.7.0/24 proto boot scope link linkdown window lock 10
unicast 192.168.7.0/24 proto boot scope link linkdown window 10
Our to-string methods should accurately print the content of
the routes. Note that iproute2 fails to do so too.
-rw-r--r-- | src/platform/nm-platform.c | 40 |
1 files changed, 10 insertions, 30 deletions
diff --git a/src/platform/nm-platform.c b/src/platform/nm-platform.c index 6884a2b528..cd2ebb6f57 100644 --- a/src/platform/nm-platform.c +++ b/src/platform/nm-platform.c @@ -4186,16 +4186,6 @@ nm_platform_ip4_route_to_string (const NMPlatformIP4Route *route, char *buf, gsi if (route->tos) nm_sprintf_buf (str_tos, " tos 0x%x", (unsigned) route->tos); - if (route->window) - nm_sprintf_buf (str_window, " window %s%"G_GUINT32_FORMAT, route->lock_window ? "lock " : "", route->window); - if (route->cwnd) - nm_sprintf_buf (str_cwnd, " cwnd %s%"G_GUINT32_FORMAT, route->lock_cwnd ? "lock " : "", route->cwnd); - if (route->initcwnd) - nm_sprintf_buf (str_initcwnd, " initcwnd %s%"G_GUINT32_FORMAT, route->lock_initcwnd ? "lock " : "", route->initcwnd); - if (route->initrwnd) - nm_sprintf_buf (str_initrwnd, " initrwnd %s%"G_GUINT32_FORMAT, route->lock_initrwnd ? "lock " : "", route->initrwnd); - if (route->mtu) - nm_sprintf_buf (str_mtu, " mtu %s%"G_GUINT32_FORMAT, route->lock_mtu ? "lock " : "", route->mtu); g_snprintf (buf, len, "%s/%d" @@ -4227,11 +4217,11 @@ nm_platform_ip4_route_to_string (const NMPlatformIP4Route *route, char *buf, gsi route->pref_src ? " pref-src " : "", route->pref_src ? inet_ntop (AF_INET, &route->pref_src, s_pref_src, sizeof(s_pref_src)) : "", route->tos ? str_tos : "", - route->window ? str_window : "", - route->cwnd ? str_cwnd : "", - route->initcwnd ? str_initcwnd : "", - route->initrwnd ? str_initrwnd : "", - route->mtu ? str_mtu : ""); + route->window || route->lock_window ? nm_sprintf_buf (str_window, " window %s%"G_GUINT32_FORMAT, route->lock_window ? "lock " : "", route->window) : "", + route->cwnd || route->lock_cwnd ? nm_sprintf_buf (str_cwnd, " cwnd %s%"G_GUINT32_FORMAT, route->lock_cwnd ? "lock " : "", route->cwnd) : "", + route->initcwnd || route->lock_initcwnd ? nm_sprintf_buf (str_initcwnd, " initcwnd %s%"G_GUINT32_FORMAT, route->lock_initcwnd ? "lock " : "", route->initcwnd) : "", + route->initrwnd || route->lock_initrwnd ? nm_sprintf_buf (str_initrwnd, " initrwnd %s%"G_GUINT32_FORMAT, route->lock_initrwnd ? "lock " : "", route->initrwnd) : "", + route->mtu || route->lock_mtu ? nm_sprintf_buf (str_mtu, " mtu %s%"G_GUINT32_FORMAT, route->lock_mtu ? "lock " : "", route->mtu) : ""); return buf; } @@ -4271,16 +4261,6 @@ nm_platform_ip6_route_to_string (const NMPlatformIP6Route *route, char *buf, gsi if (route->tos) nm_sprintf_buf (str_tos, " tos 0x%x", (unsigned) route->tos); - if (route->window) - nm_sprintf_buf (str_window, " window %s%"G_GUINT32_FORMAT, route->lock_window ? "lock " : "", route->window); - if (route->cwnd) - nm_sprintf_buf (str_cwnd, " cwnd %s%"G_GUINT32_FORMAT, route->lock_cwnd ? "lock " : "", route->cwnd); - if (route->initcwnd) - nm_sprintf_buf (str_initcwnd, " initcwnd %s%"G_GUINT32_FORMAT, route->lock_initcwnd ? "lock " : "", route->initcwnd); - if (route->initrwnd) - nm_sprintf_buf (str_initrwnd, " initrwnd %s%"G_GUINT32_FORMAT, route->lock_initrwnd ? "lock " : "", route->initrwnd); - if (route->mtu) - nm_sprintf_buf (str_mtu, " mtu %s%"G_GUINT32_FORMAT, route->lock_mtu ? "lock " : "", route->mtu); g_snprintf (buf, len, "%s/%d" @@ -4311,11 +4291,11 @@ nm_platform_ip6_route_to_string (const NMPlatformIP6Route *route, char *buf, gsi s_pref_src[0] ? " pref-src " : "", s_pref_src[0] ? s_pref_src : "", route->tos ? str_tos : "", - route->window ? str_window : "", - route->cwnd ? str_cwnd : "", - route->initcwnd ? str_initcwnd : "", - route->initrwnd ? str_initrwnd : "", - route->mtu ? str_mtu : ""); + route->window || route->lock_window ? nm_sprintf_buf (str_window, " window %s%"G_GUINT32_FORMAT, route->lock_window ? "lock " : "", route->window) : "", + route->cwnd || route->lock_cwnd ? nm_sprintf_buf (str_cwnd, " cwnd %s%"G_GUINT32_FORMAT, route->lock_cwnd ? "lock " : "", route->cwnd) : "", + route->initcwnd || route->lock_initcwnd ? nm_sprintf_buf (str_initcwnd, " initcwnd %s%"G_GUINT32_FORMAT, route->lock_initcwnd ? "lock " : "", route->initcwnd) : "", + route->initrwnd || route->lock_initrwnd ? nm_sprintf_buf (str_initrwnd, " initrwnd %s%"G_GUINT32_FORMAT, route->lock_initrwnd ? "lock " : "", route->initrwnd) : "", + route->mtu || route->lock_mtu ? nm_sprintf_buf (str_mtu, " mtu %s%"G_GUINT32_FORMAT, route->lock_mtu ? "lock " : "", route->mtu) : ""); return buf; } |