diff options
| author | G. Paul Ziemba <paulz@labn.net> | 2025-02-06 08:08:38 -0800 |
|---|---|---|
| committer | G. Paul Ziemba <paulz@labn.net> | 2025-02-06 08:45:01 -0800 |
| commit | 125a480b532a7b392581cba464d1e719e13340ed (patch) | |
| tree | a9548b4b06662055e7b666cdf7fa38fec70f0c8e | |
| parent | a02ec27693ddfa708ec1f62400af6cea533bf1e8 (diff) | |
bgpd: rfapi: if BGP is terminating, free peer BPIs now instead of using timer
Signed-off-by: G. Paul Ziemba <paulz@labn.net>
| -rw-r--r-- | bgpd/rfapi/rfapi_import.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/bgpd/rfapi/rfapi_import.c b/bgpd/rfapi/rfapi_import.c index 99d8bcfce4..d9f63700f0 100644 --- a/bgpd/rfapi/rfapi_import.c +++ b/bgpd/rfapi/rfapi_import.c @@ -4067,9 +4067,15 @@ static void rfapiProcessPeerDownRt(struct peer *peer, bpi, import_table, afi, -1); import_table->holddown_count[afi] += 1; } - rfapiBiStartWithdrawTimer(import_table, rn, bpi, - afi, safi, - timer_service_func); + if (bm->terminating) { + if (safi == SAFI_MPLS_VPN) + rfapiExpireVpnNow(import_table, rn, bpi, 1); + else + rfapiExpireEncapNow(import_table, rn, bpi); + + } else + rfapiBiStartWithdrawTimer(import_table, rn, bpi, afi, safi, + timer_service_func); } } } |
