summaryrefslogtreecommitdiff
path: root/nest/rt.h
diff options
context:
space:
mode:
authorMaria Matejka <mq@ucw.cz>2022-06-22 12:45:42 +0200
committerMaria Matejka <mq@ucw.cz>2022-06-24 15:49:08 +0200
commit9c9059fd172dcc2f8805529de4b3174f280c109c (patch)
treeb0e642405a9485b0f571d8414720a072aac7b404 /nest/rt.h
parent050b4b4e5e6d4c05345bed2ec62c865258b4e7ee (diff)
Allowed optimized exporting of a subprefix tree
Added an option for export filter to allow for prefiltering based on the prefix. Routes outside the given prefix are completely ignored. Config is simple: export in <net> <filter>;
Diffstat (limited to 'nest/rt.h')
-rw-r--r--nest/rt.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/nest/rt.h b/nest/rt.h
index 0f5a5ba7..57e117da 100644
--- a/nest/rt.h
+++ b/nest/rt.h
@@ -212,6 +212,7 @@ struct rt_pending_export {
struct rt_export_request {
struct rt_export_hook *hook; /* Table part of the export */
+ const net_addr *addr_in; /* Subnet export request */
char *name;
u8 trace_routes;
@@ -245,6 +246,8 @@ struct rt_export_hook {
} stats;
struct fib_iterator feed_fit; /* Routing table iterator used during feeding */
+ struct f_trie_walk_state *walk_state; /* Iterator over networks in trie */
+ struct f_trie *walk_lock; /* Locked trie for walking */
btime last_state_change; /* Time of last state transition */