All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH iproute2] ip: allow ip address show to list addresses with certain flags not being set
@ 2014-12-22 19:18 Heiner Kallweit
  2014-12-24 20:16 ` Stephen Hemminger
  0 siblings, 1 reply; 3+ messages in thread
From: Heiner Kallweit @ 2014-12-22 19:18 UTC (permalink / raw)
  To: Stephen Hemminger; +Cc: netdev

Sometimes it's needed to have "ip address show" list only addresses
with certain flags not being set, e.g. in network scripts.
As an example one might want to exclude addresses in "tentative"
or "deprecated" state.

Support listing addresses with flags tentative, deprecated, dadfailed
not being set by prefixing the respective flag with a minus.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
 ip/ipaddress.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/ip/ipaddress.c b/ip/ipaddress.c
index 221ae1f..a071572 100644
--- a/ip/ipaddress.c
+++ b/ip/ipaddress.c
@@ -80,7 +80,7 @@ static void usage(void)
 	fprintf(stderr, "SCOPE-ID := [ host | link | global | NUMBER ]\n");
 	fprintf(stderr, "FLAG-LIST := [ FLAG-LIST ] FLAG\n");
 	fprintf(stderr, "FLAG  := [ permanent | dynamic | secondary | primary |\n");
-	fprintf(stderr, "           tentative | deprecated | dadfailed | temporary |\n");
+	fprintf(stderr, "           [-]tentative | [-]deprecated | [-]dadfailed | temporary |\n");
 	fprintf(stderr, "           CONFFLAG-LIST ]\n");
 	fprintf(stderr, "CONFFLAG-LIST := [ CONFFLAG-LIST ] CONFFLAG\n");
 	fprintf(stderr, "CONFFLAG  := [ home | nodad | mngtmpaddr | noprefixroute ]\n");
@@ -1261,9 +1261,15 @@ static int ipaddr_list_flush_or_save(int argc, char **argv, int action)
 		} else if (strcmp(*argv, "tentative") == 0) {
 			filter.flags |= IFA_F_TENTATIVE;
 			filter.flagmask |= IFA_F_TENTATIVE;
+		} else if (strcmp(*argv, "-tentative") == 0) {
+			filter.flags &= ~IFA_F_TENTATIVE;
+			filter.flagmask |= IFA_F_TENTATIVE;
 		} else if (strcmp(*argv, "deprecated") == 0) {
 			filter.flags |= IFA_F_DEPRECATED;
 			filter.flagmask |= IFA_F_DEPRECATED;
+		} else if (strcmp(*argv, "-deprecated") == 0) {
+			filter.flags &= ~IFA_F_DEPRECATED;
+			filter.flagmask |= IFA_F_DEPRECATED;
 		} else if (strcmp(*argv, "home") == 0) {
 			filter.flags |= IFA_F_HOMEADDRESS;
 			filter.flagmask |= IFA_F_HOMEADDRESS;
@@ -1279,6 +1285,9 @@ static int ipaddr_list_flush_or_save(int argc, char **argv, int action)
 		} else if (strcmp(*argv, "dadfailed") == 0) {
 			filter.flags |= IFA_F_DADFAILED;
 			filter.flagmask |= IFA_F_DADFAILED;
+		} else if (strcmp(*argv, "-dadfailed") == 0) {
+			filter.flags &= ~IFA_F_DADFAILED;
+			filter.flagmask |= IFA_F_DADFAILED;
 		} else if (strcmp(*argv, "label") == 0) {
 			NEXT_ARG();
 			filter.label = *argv;
-- 
2.2.1

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH iproute2] ip: allow ip address show to list addresses with certain flags not being set
  2014-12-22 19:18 [PATCH iproute2] ip: allow ip address show to list addresses with certain flags not being set Heiner Kallweit
@ 2014-12-24 20:16 ` Stephen Hemminger
  2014-12-24 22:10   ` Heiner Kallweit
  0 siblings, 1 reply; 3+ messages in thread
From: Stephen Hemminger @ 2014-12-24 20:16 UTC (permalink / raw)
  To: Heiner Kallweit; +Cc: netdev

On Mon, 22 Dec 2014 20:18:43 +0100
Heiner Kallweit <hkallweit1@gmail.com> wrote:

> Sometimes it's needed to have "ip address show" list only addresses
> with certain flags not being set, e.g. in network scripts.
> As an example one might want to exclude addresses in "tentative"
> or "deprecated" state.
> 
> Support listing addresses with flags tentative, deprecated, dadfailed
> not being set by prefixing the respective flag with a minus.
> 
> Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>

Applied, but please send another patch to update manual page.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH iproute2] ip: allow ip address show to list addresses with certain flags not being set
  2014-12-24 20:16 ` Stephen Hemminger
@ 2014-12-24 22:10   ` Heiner Kallweit
  0 siblings, 0 replies; 3+ messages in thread
From: Heiner Kallweit @ 2014-12-24 22:10 UTC (permalink / raw)
  To: Stephen Hemminger; +Cc: netdev

Am 24.12.2014 um 21:16 schrieb Stephen Hemminger:
> On Mon, 22 Dec 2014 20:18:43 +0100
> Heiner Kallweit <hkallweit1@gmail.com> wrote:
> 
>> Sometimes it's needed to have "ip address show" list only addresses
>> with certain flags not being set, e.g. in network scripts.
>> As an example one might want to exclude addresses in "tentative"
>> or "deprecated" state.
>>
>> Support listing addresses with flags tentative, deprecated, dadfailed
>> not being set by prefixing the respective flag with a minus.
>>
>> Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
> 
> Applied, but please send another patch to update manual page.
> 
OK, man patch update follows ..

Heiner

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-12-24 22:11 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-12-22 19:18 [PATCH iproute2] ip: allow ip address show to list addresses with certain flags not being set Heiner Kallweit
2014-12-24 20:16 ` Stephen Hemminger
2014-12-24 22:10   ` Heiner Kallweit

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.