|
| ||||||||||||||||
| typedef A Addr | Addr |
| typedef IPNet<A> Net | Net |
| RouteRedistributor (RouteDB<A>& route_db)
| RouteRedistributor |
Constructor for RouteRedistributor
Parameters:
| route_db | the route database to add and expire routes in. |
| ~RouteRedistributor ()
| ~RouteRedistributor |
| bool add_route (const Net& net,
const Addr& nexthop,
const string& ifname,
const string& vifname,
uint16_t cost,
uint16_t tag,
const PolicyTags& policytags)
| add_route |
Add a route to be redistributed with specific cost and tag values.
Parameters:
| net | network described by route. |
| nexthop | router capable of forwarding route. |
| ifname | the corresponding interface name toward the destination. |
| vifname | the corresponding vif name toward the destination. |
| policytags | policy-tags associated with route. |
Returns: true on success, false if route could not be added to the RouteDatabase. Failure may occur if route already exists or a lower cost route exists.
| bool expire_route (const Net& net)
| expire_route |
Trigger route expiry.
Parameters:
| network | described by route. |
Returns: true on success, false if route did not come from this RouteRedistributor instance.
| uint32_t route_count ()
| route_count |
[const]
Accessor.
Returns: number of routes
| void withdraw_routes ()
| withdraw_routes |
Withdraw routes. Triggers a walking of associated routes and their expiration from the RIP route database.
| bool withdrawing_routes ()
| withdrawing_routes |
[const]
Returns: true if actively withdrawing routes, false otherwise.
| RouteDB<A>& _route_db | _route_db |
[protected]
| RedistRouteOrigin<A>* _rt_origin | _rt_origin |
[protected]
| RouteWalker<A>* _wdrawer | _wdrawer |
[protected]
| XorpTimer _wtimer | _wtimer |
[protected]