[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3ded09a4-54f9-9d82-d952-33527a6a3e58@msu.ru>
Date: Tue, 13 Mar 2018 21:19:45 +0100
From: Alexander Zubkov <green@....ru>
To: Luca Boccassi <bluca@...ian.org>,
Stephen Hemminger <stephen@...workplumber.org>
Cc: "netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: [PATCH iproute2] treat "default" and "all"/"any" parameters
differenty
Debian maintainer found that basic command:
# ip route flush all
No longer worked as expected which breaks user scripts and
expectations. It no longer flushed all IPv4 routes.
Recently behaviour of "default" prefix parameter was corrected. But at
the same time behaviour of "all"/"any" was altered too, because they
were the same branch of the code. As those parameters mean different,
they need to be treated differently in code too. This patch reflects
the difference.
Reported-by: Luca Boccassi <bluca@...ian.org>
Signed-off-by: Alexander Zubkov <green@....ru>
---
lib/utils.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/lib/utils.c b/lib/utils.c
index 9fa5220..b289d9c 100644
--- a/lib/utils.c
+++ b/lib/utils.c
@@ -658,7 +658,8 @@ int get_prefix_1(inet_prefix *dst, char *arg, int
family)
dst->family = family;
dst->bytelen = 0;
dst->bitlen = 0;
- dst->flags |= PREFIXLEN_SPECIFIED;
+ if (strcmp(arg, "default") == 0)
+ dst->flags |= PREFIXLEN_SPECIFIED;
return 0;
}
--
1.9.1
Powered by blists - more mailing lists