|
|
FeaClient communicates add route and delete requests from the RIBs to the FEA process.
| FeaClient (XrlRouter& xrl_router, uint32_t max_ops = 100)
| FeaClient |
FeaClient constructor.
Parameters:
| xrl_router | XRL router instance to use for communication with the FEA |
| max_ops | the maximum number of operations in a transaction. |
| ~FeaClient ()
| ~FeaClient |
FeaClient destructor
| void set_enabled (bool en)
| set_enabled |
Set enabled state.
When enabled FeaClient attempts to send commands to the FEA. When disabled it silently ignores the requests.
| bool enabled ()
| enabled |
[const]
Get enabled state.
| void add_route (const IPv4Net& dest,
const IPv4& gw,
const string& ifname,
const string& vifname)
| add_route |
Communicate the addition of a new IPv4 route to the FEA.
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. |
| void delete_route (const IPv4Net&)
| delete_route |
Communicate the deletion of an IPv4 route to the FEA.
Parameters:
| dest | the destination subnet of the route. |
| void add_route (const IPv6Net& dest,
const IPv6& gw,
const string& ifname,
const string& vifname)
| add_route |
| void delete_route (const IPv6Net& re)
| delete_route |
Communicate the deletion of an IPv6 route to the FEA.
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 FEA.
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 FEA.
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 FEA.
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 FEA.
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 FEA.
| bool tasks_pending ()
| tasks_pending |
[const]
Returns: true if there are currently any adds or deletes queued for transmission to the FEA or awaiting acknowledgement from the FEA
| SyncFtiCommand * get_next ()
| get_next |
[protected]
Returns: The next task or 0 if there isn't one.
| void transaction_completed ()
| transaction_completed |
[protected]
Called when a transaction has completed.
| void start ()
| start |
[protected]
Called to start a transaction.
| XrlRouter& _xrl_router | _xrl_router |
[protected]
| bool _busy | _busy |
[protected]
| list<FeaClientTask> _tasks | _tasks |
[protected]
| list<FeaClientTask> _completed_tasks | _completed_tasks |
[protected]
| const uint32_t _max_ops | _max_ops |
[protected]
| uint32_t _op_count | _op_count |
[protected]
| bool _enabled | _enabled |
[protected]
| Generated by: pavlin on possum.icir.org on Mon Mar 10 19:35:00 2003, using kdoc 2.0a54+XORP. |