]> git.proxmox.com Git - mirror_frr.git/blobdiff - bgpd/bgp_table.h
Merge pull request #2898 from donaldsharp/vrf_bitmap_is_whack
[mirror_frr.git] / bgpd / bgp_table.h
index 9afc2adbb06e2f9596a9ca67a3f425d14b4fae5e..60c2cbd4a483c3e646595ebc4434b2f16badd6ff 100644 (file)
 #include "mpls.h"
 #include "table.h"
 #include "queue.h"
+#include "linklist.h"
 
 struct bgp_table {
+       /* table belongs to this instance */
+       struct bgp *bgp;
+
        /* afi/safi of this table */
        afi_t afi;
        safi_t safi;
@@ -75,7 +79,7 @@ typedef struct bgp_table_iter_t_ {
        route_table_iter_t rt_iter;
 } bgp_table_iter_t;
 
-extern struct bgp_table *bgp_table_init(afi_t, safi_t);
+extern struct bgp_table *bgp_table_init(struct bgp *bgp, afi_t, safi_t);
 extern void bgp_table_lock(struct bgp_table *);
 extern void bgp_table_unlock(struct bgp_table *);
 extern void bgp_table_finish(struct bgp_table **);
@@ -306,4 +310,7 @@ static inline uint64_t bgp_table_version(struct bgp_table *table)
        return table->version;
 }
 
+void bgp_table_range_lookup(const struct bgp_table *table, struct prefix *p,
+                           uint8_t maxlen, struct list *matches);
+
 #endif /* _QUAGGA_BGP_TABLE_H */