summaryrefslogtreecommitdiff
path: root/lib/memtypes.c
diff options
context:
space:
mode:
authorFeng Lu <lu.feng@6wind.com>2015-05-22 11:39:53 +0200
committerDonald Sharp <sharpd@cumulusnetworks.com>2016-06-08 15:16:23 -0400
commitc880b6367ec69eeae5ad7ed7527d0cf567918a10 (patch)
treee0223eb96e2a5864c23f309b6813046dcb573ddc /lib/memtypes.c
parentf596f2102fd2f4ff15a54fbaa5532aeff6e47795 (diff)
ripngd: add ECMP support
* Each node in the routing table is changed into a list, holding the multiple equal-cost paths. * If one of the multiple entries gets less-preferred (greater metric or greater distance), it will be directly deleted instead of starting a garbage-collection timer for it. The garbage-collection timer is started only when the last entry in the list gets INFINITY. * Some new functions are used to maintain the ECMP list. And hence ripng_route_process(), ripng_redistribute_add() and ripng_timeout() are significantly simplified. * ripng_zebra_ipv6_add() and ripng_zebra_ipv6_delete() now can share the common code. The common part is moved to ripng_zebra_ipv6_send(). Signed-off-by: Feng Lu <lu.feng@6wind.com> Reviewed-by: Alain Ritoux <alain.ritoux@6wind.com> Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com> Acked-by: Vincent Jardin <vincent.jardin@6wind.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'lib/memtypes.c')
0 files changed, 0 insertions, 0 deletions