|
|
FEA data plane manager base class.
FeaDataPlaneManager (FeaNode& fea_node, const string& manager_name)
| FeaDataPlaneManager |
Constructor.
Parameters:
fea_node | the FeaNode this manager belongs to. |
manager_name | the data plane manager name. |
~FeaDataPlaneManager ()
| ~FeaDataPlaneManager |
[virtual]
const string& manager_name ()
| manager_name |
[const]
Get the data plane manager name.
Returns: the data plane name.
int start_manager (string& error_msg)
| start_manager |
[virtual]
Start data plane manager operation.
Parameters:
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int stop_manager (string& error_msg)
| stop_manager |
[virtual]
Stop data plane manager operation.
Parameters:
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int load_plugins (string& error_msg)
| load_plugins |
[pure virtual]
Load the plugins.
Parameters:
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int unload_plugins (string& error_msg)
| unload_plugins |
[virtual]
Unload the plugins.
Parameters:
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int register_plugins (string& error_msg)
| register_plugins |
[pure virtual]
Register the plugins.
Returns: XORP_OK on success, otherwise XORP_ERROR.
int unregister_plugins (string& error_msg)
| unregister_plugins |
[virtual]
Unregister the plugins.
Parameters:
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int start_plugins (string& error_msg)
| start_plugins |
[virtual]
Start plugins operation.
Parameters:
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int stop_plugins (string& error_msg)
| stop_plugins |
[virtual]
Stop plugins operation.
Parameters:
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
EventLoop& eventloop ()
| eventloop |
Get the event loop this instance is added to.
Returns: the event loop this instance is added to.
bool have_ipv4 ()
| have_ipv4 |
[const virtual]
Return true if the underlying system supports IPv4.
Returns: true if the underlying system supports IPv4, otherwise false.
bool have_ipv6 ()
| have_ipv6 |
[const virtual]
Return true if the underlying system supports IPv6.
Returns: true if the underlying system supports IPv6, otherwise false.
IfConfig& ifconfig ()
| ifconfig |
Get the IfConfig instance.
Returns: the IfConfig instance.
FirewallManager& firewall_manager ()
| firewall_manager |
Get the FirewallManager instance.
Returns: the FirewallManager instance.
FibConfig& fibconfig ()
| fibconfig |
Get the FibConfig instance.
Returns: the FibConfig instance.
IoLinkManager& io_link_manager ()
| io_link_manager |
Get the IoLinkManager instance.
Returns: the IoLinkManager instance.
IoIpManager& io_ip_manager ()
| io_ip_manager |
Get the IoIpManager instance.
Returns: the IoIpManager instance.
IoTcpUdpManager& io_tcpudp_manager ()
| io_tcpudp_manager |
Get the IoTcpUdpManager instance.
Returns: the IoTcpUdpManager instance.
IfConfigProperty* ifconfig_property ()
| ifconfig_property |
Get the IfConfigProperty plugin.
Returns: the IfConfigGet plugin.
IfConfigGet* ifconfig_get ()
| ifconfig_get |
Get the IfConfigGet plugin.
Returns: the IfConfigGet plugin.
IfConfigSet* ifconfig_set ()
| ifconfig_set |
Get the IfConfigSet plugin.
Returns: the IfConfigSet plugin.
IfConfigObserver* ifconfig_observer ()
| ifconfig_observer |
Get the IfConfigObserver plugin.
Returns: the IfConfigObserver plugin.
IfConfigVlanGet* ifconfig_vlan_get ()
| ifconfig_vlan_get |
Get the IfConfigVlanGet plugin.
Returns: the IfConfigVlanGet plugin.
IfConfigVlanSet* ifconfig_vlan_set ()
| ifconfig_vlan_set |
Get the IfConfigVlanSet plugin.
Returns: the IfConfigVlanSet plugin.
FirewallGet* firewall_get ()
| firewall_get |
Get the FirewallGet plugin.
Returns: the FirewallGet plugin.
FirewallSet* firewall_set ()
| firewall_set |
Get the FirewallSet plugin.
Returns: the FirewallSet plugin.
FibConfigForwarding* fibconfig_forwarding ()
| fibconfig_forwarding |
Get the FibConfigForwarding plugin.
Returns: the FibConfigForwarding plugin.
FibConfigEntryGet* fibconfig_entry_get ()
| fibconfig_entry_get |
Get the FibConfigEntryGet plugin.
Returns: the FibConfigEntryGet plugin.
FibConfigEntrySet* fibconfig_entry_set ()
| fibconfig_entry_set |
Get the FibConfigEntrySet plugin.
Returns: the FibConfigEntrySet plugin.
FibConfigEntryObserver* fibconfig_entry_observer ()
| fibconfig_entry_observer |
Get the FibConfigEntryObserver plugin.
Returns: the FibConfigEntryObserver plugin.
FibConfigTableGet* fibconfig_table_get ()
| fibconfig_table_get |
Get the FibConfigTableGet plugin.
Returns: the FibConfigEntryGet plugin.
FibConfigTableSet* fibconfig_table_set ()
| fibconfig_table_set |
Get the FibConfigTableSet plugin.
Returns: the FibConfigEntryGet plugin.
FibConfigTableObserver* fibconfig_table_observer ()
| fibconfig_table_observer |
Get the FibConfigTableObserver plugin.
Returns: the FibConfigEntryObserver plugin.
IoLink* allocate_io_link (const IfTree& iftree,
const string& if_name,
const string& vif_name,
uint16_t ether_type,
const string& filter_program)
| allocate_io_link |
[pure virtual]
Allocate IoLink plugin instance.
Parameters:
iftree | the interface tree to use. |
if_name | the interface name. |
vif_name | the vif name. |
ether_type | the EtherType protocol number. If it is 0 then it is unused. |
filter_program | the option filter program to be applied on the received packets. The program uses tcpdump(1) style expression. |
Returns: a new instance of IoLink plugin on success, otherwise NULL.
void deallocate_io_link (IoLink* io_link)
| deallocate_io_link |
[virtual]
De-allocate IoLink plugin.
Parameters:
io_link | the IoLink plugin to deallocate. |
IoIp* allocate_io_ip (const IfTree& iftree, int family,
uint8_t ip_protocol)
| allocate_io_ip |
[pure virtual]
Allocate IoIp plugin instance.
Parameters:
iftree | the interface tree to use. |
family | the address family (AF_INET or AF_INET6 for IPv4 and IPv6 respectively). |
ip_protocol | the IP protocol number (IPPROTO_*). |
Returns: a new instance of IoIp plugin on success, otherwise NULL.
void deallocate_io_ip (IoIp* io_ip)
| deallocate_io_ip |
[virtual]
De-allocate IoIp plugin.
Parameters:
io_ip | the IoIp plugin to deallocate. |
IoTcpUdp* allocate_io_tcpudp (const IfTree& iftree, int family,
bool is_tcp)
| allocate_io_tcpudp |
[pure virtual]
Allocate IoTcpUdp plugin instance.
Parameters:
iftree | the interface tree to use. |
family | the address family (AF_INET or AF_INET6 for IPv4 and IPv6 respectively). |
is_tcp | if true allocate a TCP entry, otherwise UDP. |
Returns: a new instance of IoTcpUdp plugin on success, otherwise NULL.
void deallocate_io_tcpudp (IoTcpUdp* io_tcpudp)
| deallocate_io_tcpudp |
[virtual]
De-allocate IoTcpUdp plugin.
Parameters:
io_tcpudp | the IoTcpUdp plugin to deallocate. |
int register_all_plugins (bool is_exclusive, string& error_msg)
| register_all_plugins |
[protected]
Register all plugins.
Parameters:
is_exclusive | if true, the plugins are registered as the exclusive plugins, otherwise are added to the lists of plugins. |
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int stop_all_plugins (string& error_msg)
| stop_all_plugins |
[protected]
Stop all plugins operation.
Parameters:
error_msg | the error message (if error). |
Returns: XORP_OK on success, otherwise XORP_ERROR.
FeaNode& _fea_node | _fea_node |
[protected]
IfConfigProperty* _ifconfig_property | _ifconfig_property |
[protected]
IfConfigGet* _ifconfig_get | _ifconfig_get |
[protected]
IfConfigSet* _ifconfig_set | _ifconfig_set |
[protected]
IfConfigObserver* _ifconfig_observer | _ifconfig_observer |
[protected]
IfConfigVlanGet* _ifconfig_vlan_get | _ifconfig_vlan_get |
[protected]
IfConfigVlanSet* _ifconfig_vlan_set | _ifconfig_vlan_set |
[protected]
FirewallGet* _firewall_get | _firewall_get |
[protected]
FirewallSet* _firewall_set | _firewall_set |
[protected]
FibConfigForwarding* _fibconfig_forwarding | _fibconfig_forwarding |
[protected]
FibConfigEntryGet* _fibconfig_entry_get | _fibconfig_entry_get |
[protected]
FibConfigEntrySet* _fibconfig_entry_set | _fibconfig_entry_set |
[protected]
FibConfigEntryObserver* _fibconfig_entry_observer | _fibconfig_entry_observer |
[protected]
FibConfigTableGet* _fibconfig_table_get | _fibconfig_table_get |
[protected]
FibConfigTableSet* _fibconfig_table_set | _fibconfig_table_set |
[protected]
FibConfigTableObserver* _fibconfig_table_observer | _fibconfig_table_observer |
[protected]
list<IoLink *> _io_link_list | _io_link_list |
[protected]
list<IoIp *> _io_ip_list | _io_ip_list |
[protected]
list<IoTcpUdp *> _io_tcpudp_list | _io_tcpudp_list |
[protected]
const string _manager_name | _manager_name |
[protected]
bool _is_loaded_plugins | _is_loaded_plugins |
[protected]
bool _is_running_manager | _is_running_manager |
[protected]
bool _is_running_plugins | _is_running_plugins |
[protected]