|
|
There should be one node per Fib2mrib instance.
Fib2mribNode (EventLoop& eventloop)
| Fib2mribNode |
Constructor for a given event loop.
Parameters:
eventloop | the event loop to use. |
~Fib2mribNode ()
| ~Fib2mribNode |
[virtual]
EventLoop& eventloop ()
| eventloop |
Get the event loop this node is added to.
Returns: the event loop this node is added to.
const string& protocol_name ()
| protocol_name |
[const]
Get the protocol name.
Returns: a string with the protocol name.
bool startup ()
| startup |
Startup the node operation.
Returns: true on success, false on failure.
Reimplemented from ServiceBase.
bool shutdown ()
| shutdown |
Shutdown the node operation.
Returns: true on success, false on failure.
Reimplemented from ServiceBase.
ProcessStatus node_status (string& reason_msg)
| node_status |
Get the node status (see ProcessStatus).
Parameters:
reason_msg | return-by-reference string that contains human-readable information about the status. |
Returns: the node status (see ProcessStatus).
bool is_done ()
| is_done |
[const]
Test if the node processing is done.
Returns: true if the node processing is done, otherwise false.
int add_route4 (const IPv4Net& network, const IPv4& nexthop,
const string& ifname, const string& vifname,
uint32_t metric, uint32_t admin_distance,
const string& protocol_origin, bool xorp_route,
string& error_msg)
| add_route4 |
Add an IPv4 route.
Parameters:
network | the network address prefix this route applies to. |
nexthop | the address of the next-hop router for this route. |
ifname | the name of the physical interface toward the destination. |
vifname | the name of the virtual interface toward the destination. |
metric | the routing metric for this route. |
admin_distance | the administratively defined distance for this route. |
protocol_origin | the name of the protocol that originated this route. |
xorp_route | true if this route was installed by XORP. |
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int add_route6 (const IPv6Net& network, const IPv6& nexthop,
const string& ifname, const string& vifname,
uint32_t metric, uint32_t admin_distance,
const string& protocol_origin, bool xorp_route,
string& error_msg)
| add_route6 |
Add an IPv6 route.
Parameters:
network | the network address prefix this route applies to. |
nexthop | the address of the next-hop router for this route. |
ifname | the name of the physical interface toward the destination. |
vifname | the name of the virtual interface toward the destination. |
metric | the routing metric for this route. |
admin_distance | the administratively defined distance for this route. |
protocol_origin | the name of the protocol that originated this route. |
xorp_route | true if this route was installed by XORP. |
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int replace_route4 (const IPv4Net& network, const IPv4& nexthop,
const string& ifname, const string& vifname,
uint32_t metric, uint32_t admin_distance,
const string& protocol_origin, bool xorp_route,
string& error_msg)
| replace_route4 |
Replace an IPv4 route.
Parameters:
network | the network address prefix this route applies to. |
nexthop | the address of the next-hop router for this route. |
ifname | the name of the physical interface toward the destination. |
vifname | the name of the virtual interface toward the destination. |
metric | the routing metric for this route. |
admin_distance | the administratively defined distance for this route. |
protocol_origin | the name of the protocol that originated this route. |
xorp_route | true if this route was installed by XORP. |
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int replace_route6 (const IPv6Net& network, const IPv6& nexthop,
const string& ifname, const string& vifname,
uint32_t metric, uint32_t admin_distance,
const string& protocol_origin, bool xorp_route,
string& error_msg)
| replace_route6 |
Replace an IPv6 route.
Parameters:
network | the network address prefix this route applies to. |
nexthop | the address of the next-hop router for this route. |
ifname | the name of the physical interface toward the destination. |
vifname | the name of the virtual interface toward the destination. |
metric | the routing metric for this route. |
admin_distance | the administratively defined distance for this route. |
protocol_origin | the name of the protocol that originated this route. |
xorp_route | true if this route was installed by XORP. |
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int delete_route4 (const IPv4Net& network, const string& ifname,
const string& vifname, string& error_msg)
| delete_route4 |
Delete an IPv4 route.
Parameters:
network | the network address prefix this route applies to. |
ifname | the name of the physical interface toward the destination. |
vifname | the name of the virtual interface toward the destination. |
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int delete_route6 (const IPv6Net& network, const string& ifname,
const string& vifname, string& error_msg)
| delete_route6 |
Delete an IPv6 route.
Parameters:
network | the network address prefix this route applies to. |
ifname | the name of the physical interface toward the destination. |
vifname | the name of the virtual interface toward the destination. |
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
bool is_log_trace ()
| is_log_trace |
[const]
Test if trace log is enabled.
This method is used to test whether to output trace log debug messges.
Returns: true if trace log is enabled, otherwise false.
void set_log_trace (bool is_enabled)
| set_log_trace |
Enable/disable trace log.
This method is used to enable/disable trace log debug messages output.
Parameters:
is_enabled | if true, trace log is enabled, otherwise is disabled. |
void configure_filter (const uint32_t& filter, const string& conf)
| configure_filter |
Configure a policy filter.
Will throw an exception on error.
Export filter is not supported by fib2mrib routes.
Parameters:
filter | identifier of filter to configure. |
conf | configuration of the filter. |
void reset_filter (const uint32_t& filter)
| reset_filter |
Reset a policy filter.
Parameters:
filter | identifier of filter to reset. |
void push_routes ()
| push_routes |
Push all the routes through the policy filters for re-filtering.
void tree_complete ()
| tree_complete |
[protected]
Reimplemented from IfMgrHintObserver.
void updates_made ()
| updates_made |
[protected]
Reimplemented from IfMgrHintObserver.
void incr_startup_requests_n ()
| incr_startup_requests_n |
[protected]
void decr_startup_requests_n ()
| decr_startup_requests_n |
[protected]
void incr_shutdown_requests_n ()
| incr_shutdown_requests_n |
[protected]
void decr_shutdown_requests_n ()
| decr_shutdown_requests_n |
[protected]
void update_status ()
| update_status |
[protected]