Ops... forgot the OK from claudio@

2015-07-19 12:27 GMT-06:00 Renato Westphal <ren...@cvs.openbsd.org>:
> CVSROOT:        /cvs
> Module name:    src
> Changes by:     ren...@cvs.openbsd.org  2015/07/19 12:27:59
>
> Modified files:
>         usr.sbin/ldpd  : kroute.c lde.h lde_lib.c ldpd.h
>
> Log message:
> Rework kroute.c to send only the best routes to lde.
>
> This is major rework of the kroute.c code. The idea is remove complexity
> from the lde process by making kroute.c advertise only the lowest priority
> routes of each prefix.
>
> kroute.c now keeps track of all routes using three different structures:
> kroute_prefix, kroute_priority and kroute_node.
>
> kroute_prefix represents a prefix and contains an ordered list of
> priorities (kroute_priority) and for each priority there is a list of
> nexthops (kroute_node). Arranging the routes using these three structures
> allows for the writing of a simpler code, easier to understand.
>
> Whenever a route is removed, if there's another route for the same prefix,
> but with a lower priority, this route is immediately sent to lde.
>
> Additional fixes:
> * On RTM_CHANGE, remove the old route before installing the new one;
> * On IMSG_CTL_KROUTE_ADDR, show all nexthops for multpath routes;
>



-- 
Renato Westphal

Reply via email to