[bgpd] fix a couple of trivial compiler warnings

2008-07-22 Paul Jakma <paul.jakma@sun.com>

	* bgp_community.c: (community_str2com) assigns defaults to local
	  vars
	* bgp_attr.c: (bgp_attr_parse) match format specifier to arg
	* bgp_table.{c,h}: (bgp_table_top) can take a * to a const, quelling
	  warning in bgp_route.c
diff --git a/bgpd/ChangeLog b/bgpd/ChangeLog
index 2150add..2424494 100644
--- a/bgpd/ChangeLog
+++ b/bgpd/ChangeLog
@@ -1,3 +1,11 @@
+2008-07-22 Paul Jakma <paul.jakma@sun.com>
+
+	* bgp_community.c: (community_str2com) assigns defaults to local
+	  vars
+	* bgp_attr.c: (bgp_attr_parse) match format specifier to arg
+	* bgp_table.{c,h}: (bgp_table_top) can take a * to a const, quelling
+	  warning in bgp_route.c
+ 
 2008-07-21 Paul Jakma <paul.jakma@sun.com>
 
 
diff --git a/bgpd/bgp_attr.c b/bgpd/bgp_attr.c
index 19a0869..752099d 100644
--- a/bgpd/bgp_attr.c
+++ b/bgpd/bgp_attr.c
@@ -1571,7 +1571,7 @@
           && ((endp - startp) < (BGP_ATTR_MIN_LEN + 1)))
 	{
 	  zlog (peer->log, LOG_WARNING, 
-		"%s Extended length set, but just %u bytes of attr header",
+		"%s Extended length set, but just %lu bytes of attr header",
 		peer->host,
 		(unsigned long) (endp - STREAM_PNT (BGP_INPUT (peer))));
 
diff --git a/bgpd/bgp_community.c b/bgpd/bgp_community.c
index d5e9821..592b810 100644
--- a/bgpd/bgp_community.c
+++ b/bgpd/bgp_community.c
@@ -581,8 +581,8 @@
 {
   struct community *com = NULL;
   struct community *com_sort = NULL;
-  u_int32_t val;
-  enum community_token token;
+  u_int32_t val = 0;
+  enum community_token token = community_token_unknown;
 
   do 
     {
diff --git a/bgpd/bgp_table.c b/bgpd/bgp_table.c
index be59832..c212025 100644
--- a/bgpd/bgp_table.c
+++ b/bgpd/bgp_table.c
@@ -230,7 +230,7 @@
 
 /* Find matched prefix. */
 struct bgp_node *
-bgp_node_match (struct bgp_table *table, struct prefix *p)
+bgp_node_match (const struct bgp_table *table, struct prefix *p)
 {
   struct bgp_node *node;
   struct bgp_node *matched;
@@ -256,7 +256,7 @@
 }
 
 struct bgp_node *
-bgp_node_match_ipv4 (struct bgp_table *table, struct in_addr *addr)
+bgp_node_match_ipv4 (const struct bgp_table *table, struct in_addr *addr)
 {
   struct prefix_ipv4 p;
 
@@ -270,7 +270,7 @@
 
 #ifdef HAVE_IPV6
 struct bgp_node *
-bgp_node_match_ipv6 (struct bgp_table *table, struct in6_addr *addr)
+bgp_node_match_ipv6 (const struct bgp_table *table, struct in6_addr *addr)
 {
   struct prefix_ipv6 p;
 
@@ -285,7 +285,7 @@
 
 /* Lookup same prefix node.  Return NULL when we can't find route. */
 struct bgp_node *
-bgp_node_lookup (struct bgp_table *table, struct prefix *p)
+bgp_node_lookup (const struct bgp_table *table, struct prefix *p)
 {
   struct bgp_node *node;
 
@@ -305,7 +305,7 @@
 
 /* Add node to routing table. */
 struct bgp_node *
-bgp_node_get (struct bgp_table *table, struct prefix *p)
+bgp_node_get (struct bgp_table *const table, struct prefix *p)
 {
   struct bgp_node *new;
   struct bgp_node *node;
@@ -405,7 +405,7 @@
 /* Get fist node and lock it.  This function is useful when one want
    to lookup all the node exist in the routing table. */
 struct bgp_node *
-bgp_table_top (struct bgp_table *table)
+bgp_table_top (const struct bgp_table *const table)
 {
   /* If there is no node in the routing table return NULL. */
   if (table->top == NULL)
@@ -499,7 +499,7 @@
 }
 
 unsigned long
-bgp_table_count (struct bgp_table *table)
+bgp_table_count (const struct bgp_table *table)
 {
   return table->count;
 }
diff --git a/bgpd/bgp_table.h b/bgpd/bgp_table.h
index 0387c24..dfa7e1f 100644
--- a/bgpd/bgp_table.h
+++ b/bgpd/bgp_table.h
@@ -70,18 +70,18 @@
 extern struct bgp_table *bgp_table_init (afi_t, safi_t);
 extern void bgp_table_finish (struct bgp_table **);
 extern void bgp_unlock_node (struct bgp_node *node);
-extern struct bgp_node *bgp_table_top (struct bgp_table *);
+extern struct bgp_node *bgp_table_top (const struct bgp_table *const);
 extern struct bgp_node *bgp_route_next (struct bgp_node *);
 extern struct bgp_node *bgp_route_next_until (struct bgp_node *, struct bgp_node *);
-extern struct bgp_node *bgp_node_get (struct bgp_table *, struct prefix *);
-extern struct bgp_node *bgp_node_lookup (struct bgp_table *, struct prefix *);
+extern struct bgp_node *bgp_node_get (struct bgp_table *const, struct prefix *);
+extern struct bgp_node *bgp_node_lookup (const struct bgp_table *const, struct prefix *);
 extern struct bgp_node *bgp_lock_node (struct bgp_node *node);
-extern struct bgp_node *bgp_node_match (struct bgp_table *, struct prefix *);
-extern struct bgp_node *bgp_node_match_ipv4 (struct bgp_table *,
+extern struct bgp_node *bgp_node_match (const struct bgp_table *, struct prefix *);
+extern struct bgp_node *bgp_node_match_ipv4 (const struct bgp_table *,
 					  struct in_addr *);
 #ifdef HAVE_IPV6
-extern struct bgp_node *bgp_node_match_ipv6 (struct bgp_table *,
+extern struct bgp_node *bgp_node_match_ipv6 (const struct bgp_table *,
 					  struct in6_addr *);
 #endif /* HAVE_IPV6 */
-extern unsigned long bgp_table_count (struct bgp_table *);
+extern unsigned long bgp_table_count (const struct bgp_table *const);
 #endif /* _QUAGGA_BGP_TABLE_H */