| 
 | 
 | ||||||||||||||||
RibClient communicates add route and delete requests from the RIBs to a RIB client (e.g., the FEA).
| RibClient (XrlRouter& xrl_router, const string& target_name,
	      size_t max_ops = 100) | RibClient | 
RibClient constructor.
Parameters:
| xrl_router | XRL router instance to use for communication with the RIB client. | 
| target_name | the XRL target name to send the route changes to. | 
| max_ops | the maximum number of operations in a transaction. | 
| ~RibClient () | ~RibClient | 
| const string&  target_name () | target_name | 
[const]
Get the target name.
Returns: the target name.
| void  set_enabled (bool en) | set_enabled | 
Set enabled state.
When enabled RibClient attempts to send commands to the RIB client. When disabled it silently ignores the requests.
| bool  enabled () | enabled | 
[const]
| void  add_route (const IPv4Net& dest,
		   const IPv4& gw,
		   const string& ifname,
		   const string& vifname,
		   uint32_t metric,
		   uint32_t admin_distance,
		   const string& protocol_origin) | add_route | 
Communicate the addition of a new IPv4 route to the RIB client.
Parameters:
| dest | the destination subnet of the route. | 
| gw | the nexthop gateway to be used to forward packets towards the dest network. | 
| ifname | the name of the interface to be used to forward packets towards the dest network. | 
| vifname | the name of the virtual interface to be used to forward packets towards the dest network. | 
| metric | the routing metric toward dest. | 
| admin_distance | the administratively defined distance toward dest. | 
| protocol_origin | the name of the protocol that originated this entry. | 
| void  delete_route (const IPv4Net& dest) | delete_route | 
Communicate the deletion of an IPv4 route to the RIB client.
Parameters:
| dest | the destination subnet of the route. | 
| void  add_route (const IPv6Net& dest,
		   const IPv6& gw,
		   const string& ifname,
		   const string& vifname,
		   uint32_t metric,
		   uint32_t admin_distance,
		   const string& protocol_origin) | add_route | 
Communicate the addition of a new IPv6 route to the RIB client.
Parameters:
| dest | the destination subnet of the route. | 
| gw | the nexthop gateway to be used to forward packets towards the dest network. | 
| ifname | the name of the interface to be used to forward packets towards the dest network. | 
| vifname | the name of the virtual interface to be used to forward packets towards the dest network. | 
| metric | the routing metric toward dest. | 
| admin_distance | the administratively defined distance toward dest. | 
| protocol_origin | the name of the protocol that originated this entry. | 
| void  delete_route (const IPv6Net& dest) | delete_route | 
Communicate the deletion of an IPv6 route to the RIB client.
Parameters:
| dest | the destination subnet of the route. | 
| void  add_route (const IPv4RouteEntry& re) | add_route | 
Communicate the addition of a new IPv4 route to the RIB client.
Parameters:
| re | the routing table entry of the new route. | 
| void  delete_route (const IPv4RouteEntry& re) | delete_route | 
Communicate the deletion of a new IPv4 route to the RIB client.
Parameters:
| re | the routing table entry of the route to be deleted. | 
| void  add_route (const IPv6RouteEntry& re) | add_route | 
Communicate the addition of a new IPv6 route to the RIB client.
Parameters:
| re | the routing table entry of the new route. | 
| void  delete_route (const IPv6RouteEntry& re) | delete_route | 
Communicate the deletion of a new IPv6 route to the RIB client.
Parameters:
| re | the routing table entry of the route to be deleted. | 
| size_t  tasks_count () | tasks_count | 
[const]
Returns: the number of route adds and deletes that are currently queued for communication with the RIB client.
| bool  tasks_pending () | tasks_pending | 
[const]
Returns: true if there are currently any adds or deletes queued for transmission to the RIB client or awaiting acknowledgement from the RIB client.
| bool  failed () | failed | 
[const]
check RibClient failure status
Returns: true if RibClient has suffered a fatal error, true otherwise
| SyncFtiCommand*  get_next () | get_next | 
[protected]
Returns: The next task or NULL if there isn't one.
| void  transaction_completed (bool fatal_error) | transaction_completed | 
[protected]
Called when a transaction has completed.
| void  start () | start | 
[protected]
Called to start a transaction.