Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix a corner case with routing instance delete
Sequence of event that causes the crash 1. Static route config deleted 2. Static Route maanger triggers resolve_trigger_ to re-evaluate static route config 3. Before the resolve trigger is invoked routing instance is deleted Resolve trigger calls ProcessStaticRouteConfig to apply any pending static route config. ProcessStaticRouteConfig accesses the NULL config pointer of the routing instance Fix: 1. Check whether the routing instance is deleted in ProcessStaticRouteConfig 2. Reset the resolve_trigger_ in StaticRouteMgr destructor 3. Add API to disable resolve_trigger_ and Add UT to test delayed processing of resolve_trigger_ Change-Id: Icb1b9bad340ccefc9fbab75188034ade79a6193a Closes-bug: #1533435
- Loading branch information
Showing
3 changed files
with
148 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters