Make 'show bfd {summary|peer}' commands work for software BFD sessions #4141
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.
fixes# 4139
What I did
When software BFD is enabled (CONFIG_DB:SYSTEM_DEFAULTS|software_bfd|status=enabled), the
show bfd summaryandshow bfd peercommands now:Query FRR directly via vtysh (similar to
show ip bgpcommands)Filter BFD sessions to only show peers configured in CONFIG_DB:
This fixes the issue where software BFD sessions were not visible in 'show bfd summary' because they are not written to STATE_DB:BFD_SESSION_TABLE.
For hardware BFD, the commands continue to use STATE_DB as before.
How I did it
Changes:
Added utilities_common/bfd_util.py with helper functions:
Updated show/main.py:
How to verify it
Unit tests are added.
Manual verification:
sonic command output after the change:
Previous command output (if the output of a command-line utility has changed)
New command output (if the output of a command-line utility has changed)