diff options
author | Ondrej Zajicek <santiago@crfreenet.org> | 2023-08-21 04:20:32 +0200 |
---|---|---|
committer | Ondrej Zajicek <santiago@crfreenet.org> | 2023-08-21 04:24:15 +0200 |
commit | 52641e086675832e9f43f86237b0cddbd5ec551e (patch) | |
tree | 06a99296699538849133a4313967b997c72f9f4c /nest | |
parent | ef6ab5ce86af925ee10687fde4e62912fb892433 (diff) |
BMP: Use generic channel feed instead of direct walk over rtable
Now we use rt_notify() and channels for both feed and notifications,
in both import tables (pre-policy) and regular tables (post-policy).
Remove direct walk in bmp_route_monitor_snapshot().
Diffstat (limited to 'nest')
-rw-r--r-- | nest/proto.c | 5 | ||||
-rw-r--r-- | nest/protocol.h | 4 |
2 files changed, 3 insertions, 6 deletions
diff --git a/nest/proto.c b/nest/proto.c index 16245dca..a5325705 100644 --- a/nest/proto.c +++ b/nest/proto.c @@ -451,10 +451,7 @@ channel_start_export(struct channel *c) ASSERT(c->channel_state == CS_UP); ASSERT(c->export_state == ES_DOWN); - if (!c->bmp_hack) - channel_schedule_feed(c, 1); /* Sets ES_FEEDING */ - else - c->export_state = ES_READY; + channel_schedule_feed(c, 1); /* Sets ES_FEEDING */ } static void diff --git a/nest/protocol.h b/nest/protocol.h index d94a11bc..dad0b781 100644 --- a/nest/protocol.h +++ b/nest/protocol.h @@ -500,7 +500,7 @@ struct channel_config { u8 merge_limit; /* Maximal number of nexthops for RA_MERGED */ u8 in_keep_filtered; /* Routes rejected in import filter are kept */ u8 rpki_reload; /* RPKI changes trigger channel reload */ - u8 bmp_hack; /* No feed, no flush */ + u8 bmp_hack; /* No flush */ }; struct channel { @@ -553,7 +553,7 @@ struct channel { u8 reload_pending; /* Reloading and another reload is scheduled */ u8 refeed_pending; /* Refeeding and another refeed is scheduled */ u8 rpki_reload; /* RPKI changes trigger channel reload */ - u8 bmp_hack; /* No feed, no flush */ + u8 bmp_hack; /* No flush */ struct rtable *out_table; /* Internal table for exported routes */ |