Build #2,300

FreeRangeRouting Protocol Suite

Build: #2300 was successful Changes by Donald Sharp

Build result summary


151 minutes
230113cf7123d2d1b9c686368e44a5b320fd8fc9 230113cf7123d2d1b9c686368e44a5b320fd8fc9
Total tests
Successful since
#2299 ()


Code commits

Author Commit Message Commit date
Donald Sharp Donald Sharp 230113cf7123d2d1b9c686368e44a5b320fd8fc9 230113cf7123d2d1b9c686368e44a5b320fd8fc9 Merge pull request #4506 from opensourcerouting/fix-outdated-candidate
lib: fix outdated candidate configuration issue
Renato Westphal Renato Westphal eaf6705d7a9fdcfd48c8fb51fc4fe7cffd7701f2 m eaf6705d7a9fdcfd48c8fb51fc4fe7cffd7701f2 lib: fix outdated candidate configuration issue
Even when using the classic CLI mode (i.e. when --tcli is not
used), the northbound code still uses vty->candidate_config
to perform configuration changes. From the perspective of the
user, the running configuration is being edited directly, but
under the hood the northbound layer does a full configuration
transaction for each command.  When the running configuration is
edited by a northbound client other than the CLI (e.g. kernel,
gRPC), vty->candidate_config might become outdated, and this can
lead to lots of weird problems. To fix this, always regenerate
vty->candidate_config before each configuration command when
using the classic CLI mode. When using the transactional CLI,
the user needs to update the candidate manually using the "update"
command, otherwise the "commit" command will fail with this error:
"% Candidate configuration needs to be updated before commit".

Fixes some problems reported by Don after moving an interface from
one VRF to another one while zebra is running.

Reported-by: Don Slice <>
Signed-off-by: Renato Westphal <>