* bgp_fsm.c, bgp_open.c, bgp_packet.c, bgp_route.[ch], bgp_vty.c,
	  bgpd.[ch]: Add BGP_INFO_STALE flag and end-of-rib support. "bgp
	  graceful-restart" commands added. Show numbers of individual
	  messages in "show ip bgp neighbor" command. Final pieces of graceful
	  restart.

	[merge from GNU Zebra]
diff --git a/bgpd/bgp_route.h b/bgpd/bgp_route.h
index e324ef0..46ae54d 100644
--- a/bgpd/bgp_route.h
+++ b/bgpd/bgp_route.h
@@ -36,7 +36,7 @@
 #define BGP_ROUTE_REDISTRIBUTE 3 
 
   /* BGP information status.  */
-  u_char flags;
+  u_int16_t flags;
 #define BGP_INFO_IGP_CHANGED    (1 << 0)
 #define BGP_INFO_DAMPED         (1 << 1)
 #define BGP_INFO_HISTORY        (1 << 2)
@@ -45,6 +45,7 @@
 #define BGP_INFO_ATTR_CHANGED   (1 << 5)
 #define BGP_INFO_DMED_CHECK     (1 << 6)
 #define BGP_INFO_DMED_SELECTED  (1 << 7)
+#define BGP_INFO_STALE          (1 << 8)
 
   /* Peer structure.  */
   struct peer *peer;
@@ -134,6 +135,7 @@
 void bgp_clear_route (struct peer *, afi_t, safi_t);
 void bgp_clear_route_all (struct peer *);
 void bgp_clear_adj_in (struct peer *, afi_t, safi_t);
+void bgp_clear_stale_route (struct peer *, afi_t, safi_t);
 
 int bgp_nlri_sanity_check (struct peer *, int, u_char *, bgp_size_t);
 int bgp_nlri_parse (struct peer *, struct attr *, struct bgp_nlri *);