]> git.puffer.fish Git - mirror/frr.git/commit
ldpd: update local labels when necessary
authorRenato Westphal <renato@opensourcerouting.org>
Fri, 3 Feb 2017 13:09:27 +0000 (11:09 -0200)
committerRenato Westphal <renato@opensourcerouting.org>
Mon, 6 Feb 2017 15:05:41 +0000 (13:05 -0200)
commit8cb1fc4537e2bc44a021c988b4c5d08618975924
treeddd9e48906f3d622515e1fa37a6fedbe2d4f61ef
parentf460ecf9a7f35e3ddb5f0d11d6623420c23b22cd
ldpd: update local labels when necessary

ldpd allocates null labels for directly connected routes. If a connected
route is removed (interface goes down) and an IGP learned route takes its
place in the RIB, ldpd must update the local label of the associated FEC
entry with a non-null label. The same applies for the other way around
(an interface goes up and a connected route is selected in favour of an
IGP route). Labels should be dynamic and change when necessary.

Additionally, this patch fixes the processing of route delete messages
from zebra. Route delete messages don't contain any nexthop, meaning that
whenever we receive such messages we must delete all nexthop previously
received.

Based on a patch from Bingen Eguzkitza <bingen@voltanet.io>.
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
ldpd/l2vpn.c
ldpd/lde.c
ldpd/lde.h
ldpd/lde_lib.c
ldpd/ldp_zebra.c
ldpd/ldpd.h