summaryrefslogtreecommitdiff
path: root/nest
diff options
context:
space:
mode:
authorMaria Matejka <mq@ucw.cz>2022-10-11 19:26:31 +0200
committerMaria Matejka <mq@ucw.cz>2022-10-12 10:05:16 +0200
commitfdacb89a536b1be2fc01904a73e1bee48a49e0d3 (patch)
tree7126964e24123482a9e247dcd61892c81210c224 /nest
parentc1cb2dc31c26154fc616607b767f3f20c6efe25b (diff)
BGP refeed and reload with Adj-RIB-In/Out is done without route refresh
Diffstat (limited to 'nest')
-rw-r--r--nest/proto.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/nest/proto.c b/nest/proto.c
index 0898dc36..e39fbdfe 100644
--- a/nest/proto.c
+++ b/nest/proto.c
@@ -661,6 +661,7 @@ channel_schedule_reload(struct channel *c)
{
ASSERT(c->in_req.hook);
+ rt_refresh_begin(&c->in_req);
rt_request_export(c->table, &c->reload_req);
}
@@ -677,8 +678,13 @@ channel_reload_stopped(struct rt_export_request *req)
static void
channel_reload_log_state_change(struct rt_export_request *req, u8 state)
{
+ struct channel *c = SKIP_BACK(struct channel, reload_req, req);
+
if (state == TES_READY)
+ {
+ rt_refresh_end(&c->in_req);
rt_stop_export(req, channel_reload_stopped);
+ }
}
static void