summaryrefslogtreecommitdiffstats
path: root/nest/route.h
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2010-07-27 18:20:12 +0200
committerOndrej Zajicek <santiago@crfreenet.org>2010-07-27 18:20:12 +0200
commitc477f48916d74c2db6156145851f9536ae0a0a6c (patch)
treeaac42a01e92dadaa97ee59f1236a6d71567fbe18 /nest/route.h
parent7f0d245a5e6d2d789e1fce4b5388ea69aba3b428 (diff)
downloadbird-c477f48916d74c2db6156145851f9536ae0a0a6c.tar
bird-c477f48916d74c2db6156145851f9536ae0a0a6c.zip
Hostcache should use trie to filter relevant route changes.
Diffstat (limited to 'nest/route.h')
-rw-r--r--nest/route.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/nest/route.h b/nest/route.h
index 97678e1..45b78e3 100644
--- a/nest/route.h
+++ b/nest/route.h
@@ -155,8 +155,9 @@ struct hostcache {
unsigned hash_order, hash_shift;
unsigned hash_max, hash_min;
unsigned hash_items;
-
- list hostentries;
+ linpool *lp; /* Linpool for trie */
+ struct f_trie *trie; /* Trie of prefixes that might affect hostentries */
+ list hostentries; /* List of all hostentries */
byte update_hostcache;
};
@@ -170,7 +171,6 @@ struct hostentry {
struct iface *iface; /* Chosen outgoing interface */
ip_addr gw; /* Chosen next hop */
byte dest; /* Chosen route destination type (RTD_...) */
- byte pxlen; /* Pxlen from net that matches route */
};
typedef struct rte {