diff options
| author | Rafael Zalamena <rzalamena@opensourcerouting.org> | 2020-10-04 18:04:27 -0300 |
|---|---|---|
| committer | Rafael Zalamena <rzalamena@opensourcerouting.org> | 2020-11-08 12:06:32 -0300 |
| commit | a29c51a187caa09f26dd7df64ef24b02b11a79b5 (patch) | |
| tree | 8ef5d5297e5137eac5f0e43111ac22acc71ec8a1 /lib/bfd.c | |
| parent | 270f9c682c002fc70cd49ab512b80ae83842e2e3 (diff) | |
lib: notify BFD when adding new profile
When a BFD integrated session already exists setting the profile
doesn't cause a session update (or vice versa): fix this issue by
handling the other cases.
Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
Diffstat (limited to 'lib/bfd.c')
| -rw-r--r-- | lib/bfd.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -104,7 +104,10 @@ void bfd_set_param(struct bfd_info **bfd_info, uint32_t min_rx, uint32_t min_tx, if (((*bfd_info)->required_min_rx != min_rx) || ((*bfd_info)->desired_min_tx != min_tx) || ((*bfd_info)->detect_mult != detect_mult) - || (profile && strcmp((*bfd_info)->profile, profile))) + || ((*bfd_info)->profile[0] == 0 && profile) + || ((*bfd_info)->profile[0] && profile == NULL) + || (profile && (*bfd_info)->profile[0] + && strcmp((*bfd_info)->profile, profile))) *command = ZEBRA_BFD_DEST_UPDATE; } |
