Hi Stephen!

Here's another one for you to consider.

On tis, 2008-07-22 at 20:21 +0200, martin f krafft wrote:
> piper:~|master|% sudo ip a flush dev eth0 >/dev/null
> Nothing to flush.
> 
> It should just shut up, shouldn't it? :)

The patch below makes the "Nothing to flush" only visible when show
statistics flag is given, and then only to stdout rather then stderr.

$ sudo ./ip/ip -s addr flush dev skif 
Nothing to flush.
$ sudo ./ip/ip addr flush dev skif 
$

(See http://bugs.debian.org/492196 ) 

diff --git a/ip/ipaddress.c b/ip/ipaddress.c
index 373312f..51471e8 100644
--- a/ip/ipaddress.c
+++ b/ip/ipaddress.c
@@ -697,10 +697,12 @@ static int ipaddr_list_or_flush(int argc, char **argv, 
int flush)
                                exit(1);
                        }
                        if (filter.flushed == 0) {
-                               if (round == 0) {
-                                       fprintf(stderr, "Nothing to flush.\n");
-                               } else if (show_stats)
-                                       printf("*** Flush is complete after %d 
round%s ***\n", round, round>1?"s":"");
+                               if (show_stats) {
+                                       if (round == 0)
+                                               printf("Nothing to flush.\n");
+                                       else 
+                                               printf("*** Flush is complete 
after %d round%s ***\n", round, round>1?"s":"");
+                               }
                                fflush(stdout);
                                return 0;
                        }
diff --git a/ip/ipneigh.c b/ip/ipneigh.c
index 03a1760..24e6445 100644
--- a/ip/ipneigh.c
+++ b/ip/ipneigh.c
@@ -403,10 +403,12 @@ int do_show_or_flush(int argc, char **argv, int flush)
                                exit(1);
                        }
                        if (filter.flushed == 0) {
-                               if (round == 0) {
-                                       fprintf(stderr, "Nothing to flush.\n");
-                               } else if (show_stats)
-                                       printf("*** Flush is complete after %d 
round%s ***\n", round, round>1?"s":"");
+                               if (show_stats) {
+                                       if (round == 0)
+                                               printf("Nothing to flush.\n");
+                                       else
+                                               printf("*** Flush is complete 
after %d round%s ***\n", round, round>1?"s":"");
+                               }
                                fflush(stdout);
                                return 0;
                        }
diff --git a/ip/iproute.c b/ip/iproute.c
index 2a8f3f8..6a2ea05 100644
--- a/ip/iproute.c
+++ b/ip/iproute.c
@@ -1209,11 +1209,12 @@ static int iproute_list_or_flush(int argc, char **argv, 
int flush)
                                exit(1);
                        }
                        if (filter.flushed == 0) {
-                               if (round == 0) {
-                                       if (!filter.cloned || do_ipv6 == 
AF_INET6)
-                                               fprintf(stderr, "Nothing to 
flush.\n");
-                               } else if (show_stats)
-                                       printf("*** Flush is complete after %d 
round%s ***\n", round, round>1?"s":"");
+                               if (show_stats) {
+                                       if (round == 0 && (!filter.cloned || 
do_ipv6 == AF_INET6))
+                                               printf("Nothing to flush.\n");
+                                       else
+                                               printf("*** Flush is complete 
after %d round%s ***\n", round, round>1?"s":"");
+                               }
                                fflush(stdout);
                                return 0;
                        }




-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to