[bgpd] CID #4,#5,#9,#10, simplify aspath_print_vty usage

2006-05-12 Paul Jakma <paul.jakma@sun.com>

	* bgp_aspath.{c,h}: (aspath_print_vty) take a format string,
	  so as to reduce burden on callers, all in bgp_route.c
	* bgp_route.c: (route_vty_out{,tmp}) Update to match
	  aspath_print_vty, simplifying checks needed to get spacing
	  right. CID #4,#5.
	  ({damp,flap}_route_vty_out) Ditto, CID #9, #10
diff --git a/bgpd/ChangeLog b/bgpd/ChangeLog
index 8082739..7f4f3f1 100644
--- a/bgpd/ChangeLog
+++ b/bgpd/ChangeLog
@@ -2,10 +2,15 @@
 
 	* bgp_attr.c: (bgp_packet_attribute) Remove dead code, Coverity
 	  CID #1
+	* bgp_aspath.{c,h}: (aspath_print_vty) take a format string,
+	  so as to reduce burden on callers, all in bgp_route.c
 	* bgp_route.c: (bgp_static_update_main) Remove useless NULL
 	  check, code already assumes bgp_static can not be NULL, 
 	  fixes CID #7.
 	  (bgp_static_update_rsclient) ditto, CID #6
+	  (route_vty_out{,tmp}) Update to match aspath_print_vty,
+	  simplifying checks needed to get spacing right. CID #4,#5.
+	  ({damp,flap}_route_vty_out) Ditto, CID #9, #10
 
 2006-05-08 Paul Jakma <paul.jakma@sun.com>
 
diff --git a/bgpd/bgp_aspath.c b/bgpd/bgp_aspath.c
index 9fce6e3..d404309 100644
--- a/bgpd/bgp_aspath.c
+++ b/bgpd/bgp_aspath.c
@@ -1501,9 +1501,10 @@
 
 /* Printing functions */
 void
-aspath_print_vty (struct vty *vty, struct aspath *as)
+aspath_print_vty (struct vty *vty, const char *format, struct aspath *as)
 {
-  vty_out (vty, "%s", as->str);
+  assert (format);
+  vty_out (vty, format, as->str);
 }
 
 static void
diff --git a/bgpd/bgp_aspath.h b/bgpd/bgp_aspath.h
index 7fa7f20..bf23e5d 100644
--- a/bgpd/bgp_aspath.h
+++ b/bgpd/bgp_aspath.h
@@ -77,7 +77,7 @@
 extern struct aspath *aspath_intern (struct aspath *);
 extern void aspath_unintern (struct aspath *);
 extern const char *aspath_print (struct aspath *);
-extern void aspath_print_vty (struct vty *, struct aspath *);
+extern void aspath_print_vty (struct vty *, const char *, struct aspath *);
 extern void aspath_print_all_vty (struct vty *);
 extern unsigned int aspath_key_make (struct aspath *);
 extern int aspath_loop_check (struct aspath *, as_t);
diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c
index c86ca5f..5623cad 100644
--- a/bgpd/bgp_route.c
+++ b/bgpd/bgp_route.c
@@ -5153,16 +5153,13 @@
 
       vty_out (vty, "%7u ",attr->weight);
     
-    /* Print aspath */
-    if (attr->aspath)
-      aspath_print_vty (vty, attr->aspath);
+      /* Print aspath */
+      if (attr->aspath)
+        aspath_print_vty (vty, "%s ", attr->aspath);
 
-    /* Print origin */
-    if (strlen (attr->aspath->str) == 0)
+      /* Print origin */
       vty_out (vty, "%s", bgp_origin_str[attr->origin]);
-    else
-      vty_out (vty, " %s", bgp_origin_str[attr->origin]);
-  }
+    }
   vty_out (vty, "%s", VTY_NEWLINE);
 }  
 
@@ -5217,16 +5214,13 @@
 
       vty_out (vty, "%7d ",attr->weight);
     
-    /* Print aspath */
-    if (attr->aspath)
-      aspath_print_vty (vty, attr->aspath);
+      /* Print aspath */
+      if (attr->aspath)
+        aspath_print_vty (vty, "%s ", attr->aspath);
 
-    /* Print origin */
-    if (strlen (attr->aspath->str) == 0)
+      /* Print origin */
       vty_out (vty, "%s", bgp_origin_str[attr->origin]);
-    else
-      vty_out (vty, " %s", bgp_origin_str[attr->origin]);
-  }
+    }
 
   vty_out (vty, "%s", VTY_NEWLINE);
 }  
@@ -5314,13 +5308,10 @@
     {
       /* Print aspath */
       if (attr->aspath)
-	aspath_print_vty (vty, attr->aspath);
+	aspath_print_vty (vty, "%s ", attr->aspath);
 
       /* Print origin */
-      if (strlen (attr->aspath->str) == 0)
-	vty_out (vty, "%s", bgp_origin_str[attr->origin]);
-      else
-	vty_out (vty, " %s", bgp_origin_str[attr->origin]);
+      vty_out (vty, "%s", bgp_origin_str[attr->origin]);
     }
   vty_out (vty, "%s", VTY_NEWLINE);
 }
@@ -5377,13 +5368,10 @@
     {
       /* Print aspath */
       if (attr->aspath)
-	aspath_print_vty (vty, attr->aspath);
+	aspath_print_vty (vty, "%s ", attr->aspath);
 
       /* Print origin */
-      if (strlen (attr->aspath->str) == 0)
-	vty_out (vty, "%s", bgp_origin_str[attr->origin]);
-      else
-	vty_out (vty, " %s", bgp_origin_str[attr->origin]);
+      vty_out (vty, "%s", bgp_origin_str[attr->origin]);
     }
   vty_out (vty, "%s", VTY_NEWLINE);
 }
@@ -5408,7 +5396,7 @@
 	  if (aspath_count_hops (attr->aspath) == 0)
 	    vty_out (vty, "Local");
 	  else
-	    aspath_print_vty (vty, attr->aspath);
+	    aspath_print_vty (vty, "%s", attr->aspath);
 	}
 
       if (CHECK_FLAG (binfo->flags, BGP_INFO_REMOVED))