diff --git a/bgpd/bgp_advertise.h b/bgpd/bgp_advertise.h
index 995245a..4ebde90 100644
--- a/bgpd/bgp_advertise.h
+++ b/bgpd/bgp_advertise.h
@@ -128,23 +128,23 @@
 #define BGP_ADJ_OUT_DEL(N,A)   BGP_INFO_DEL(N,A,adj_out)
 
 /* Prototypes.  */
-void bgp_adj_out_set (struct bgp_node *, struct peer *, struct prefix *,
+extern void bgp_adj_out_set (struct bgp_node *, struct peer *, struct prefix *,
 		      struct attr *, afi_t, safi_t, struct bgp_info *);
-void bgp_adj_out_unset (struct bgp_node *, struct peer *, struct prefix *,
+extern void bgp_adj_out_unset (struct bgp_node *, struct peer *, struct prefix *,
 			afi_t, safi_t);
-void bgp_adj_out_remove (struct bgp_node *, struct bgp_adj_out *, 
+extern void bgp_adj_out_remove (struct bgp_node *, struct bgp_adj_out *, 
 			 struct peer *, afi_t, safi_t);
-int bgp_adj_out_lookup (struct peer *, struct prefix *, afi_t, safi_t,
+extern int bgp_adj_out_lookup (struct peer *, struct prefix *, afi_t, safi_t,
 			struct bgp_node *);
 
-void bgp_adj_in_set (struct bgp_node *, struct peer *, struct attr *);
-void bgp_adj_in_unset (struct bgp_node *, struct peer *);
-void bgp_adj_in_remove (struct bgp_node *, struct bgp_adj_in *);
+extern void bgp_adj_in_set (struct bgp_node *, struct peer *, struct attr *);
+extern void bgp_adj_in_unset (struct bgp_node *, struct peer *);
+extern void bgp_adj_in_remove (struct bgp_node *, struct bgp_adj_in *);
 
-struct bgp_advertise *
+extern struct bgp_advertise *
 bgp_advertise_clean (struct peer *, struct bgp_adj_out *, afi_t, safi_t);
 
-void bgp_sync_init (struct peer *);
-void bgp_sync_delete (struct peer *);
+extern void bgp_sync_init (struct peer *);
+extern void bgp_sync_delete (struct peer *);
 
 #endif /* _QUAGGA_BGP_ADVERTISE_H */
