mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-12-31 14:11:54 +00:00
Merge commit '53958809' into thread-next
This commit is contained in:
commit
ff24f027a6
@ -617,6 +617,12 @@ channel_export_stopped(struct rt_export_request *req)
|
||||
{
|
||||
c->refeeding = 1;
|
||||
c->refeed_pending = 0;
|
||||
|
||||
channel_reset_limit(c, &c->out_limit, PLD_OUT);
|
||||
|
||||
bmap_reset(&c->export_map, 1024);
|
||||
bmap_reset(&c->export_reject_map, 1024);
|
||||
|
||||
rt_request_export(c->table, req);
|
||||
return;
|
||||
}
|
||||
@ -643,6 +649,7 @@ channel_feed_end(struct channel *c)
|
||||
(l->count <= l->max))
|
||||
{
|
||||
log(L_INFO "Protocol %s resets route export limit (%u)", c->proto->name, l->max);
|
||||
channel_reset_limit(c, &c->out_limit, PLD_OUT);
|
||||
|
||||
c->refeed_pending = 1;
|
||||
rt_stop_export(req, channel_export_stopped);
|
||||
|
@ -899,6 +899,9 @@ rt_notify_basic(struct channel *c, const net_addr *net, rte *new, rte *old)
|
||||
if (old && !bmap_test(&c->export_map, old->id))
|
||||
old = NULL;
|
||||
|
||||
if (old && (old->sender == c->in_req.hook))
|
||||
bug("bad-behaved pipe");
|
||||
|
||||
if (!new && !old)
|
||||
return;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user