mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2025-01-03 15:41:54 +00:00
Fixed BGP reload limits
This commit is contained in:
parent
b83a9d5f9a
commit
26552a7ec8
10
nest/proto.c
10
nest/proto.c
@ -880,14 +880,10 @@ channel_request_reload(struct channel *c)
|
|||||||
|
|
||||||
CD(c, "Reload requested");
|
CD(c, "Reload requested");
|
||||||
|
|
||||||
|
if (c->in_keep & RIK_PREFILTER)
|
||||||
|
channel_schedule_reload(c);
|
||||||
|
else
|
||||||
c->proto->reload_routes(c);
|
c->proto->reload_routes(c);
|
||||||
|
|
||||||
/*
|
|
||||||
* Should this be done before reload_routes() hook?
|
|
||||||
* Perhaps, but routes are updated asynchronously.
|
|
||||||
*/
|
|
||||||
channel_reset_limit(c, &c->rx_limit, PLD_RX);
|
|
||||||
channel_reset_limit(c, &c->in_limit, PLD_IN);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const struct channel_class channel_basic = {
|
const struct channel_class channel_basic = {
|
||||||
|
@ -1447,11 +1447,7 @@ bgp_reload_routes(struct channel *C)
|
|||||||
struct bgp_proto *p = (void *) C->proto;
|
struct bgp_proto *p = (void *) C->proto;
|
||||||
struct bgp_channel *c = (void *) C;
|
struct bgp_channel *c = (void *) C;
|
||||||
|
|
||||||
ASSERT(p->conn && (p->route_refresh || (C->in_keep & RIK_PREFILTER)));
|
ASSERT(p->conn && p->route_refresh);
|
||||||
|
|
||||||
if (C->in_keep & RIK_PREFILTER)
|
|
||||||
channel_schedule_reload(C);
|
|
||||||
else
|
|
||||||
bgp_schedule_packet(p->conn, c, PKT_ROUTE_REFRESH);
|
bgp_schedule_packet(p->conn, c, PKT_ROUTE_REFRESH);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user