Fix definition of available path #1919
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The check for available paths was too simplistic, and only tested for availability of CID for path_id=0. This caused the code to return an error 1099 if the application tried to open a new path after path 0 was abandoned.
Added two test cases in the multipath test suite:
multipath_break3
simulates a disconnected interface, and thus anaddress unreachable
signal for the path. Verify that path 0 is abandoned after that.multipath_back0
also simulates the disconnection of the link under path0, but also simulate that interface going back up and the application requesting the creation of a new path.The fix required checking the test
multipath_ab1
, which simulates abandoning a series of path_id before the corresponding path was activated. We verify that the test for path number availability checks for this kind of deletion and skips path ids for which the CID were defined and then deleted.