📄 rib_base.hh
字号:
virtual XrlCmdError rib_0_1_delete_route4( // Input values, const string& protocol, const bool& unicast, const bool& multicast, const IPv4Net& network) = 0; virtual XrlCmdError rib_0_1_delete_route6( // Input values, const string& protocol, const bool& unicast, const bool& multicast, const IPv6Net& network) = 0; /** * Pure-virtual function that needs to be implemented to: * * Add/replace a route by explicitly specifying the network interface * toward the destination. * * @param protocol the name of the protocol this route comes from. * * @param unicast true if the route is for the unicast RIB. * * @param multicast true if the route is for the multicast RIB. * * @param network the network address prefix of the route. * * @param nexthop the address of the next-hop router toward the * destination. * * @param ifname of the name of the physical interface toward the * destination. * * @param vifname of the name of the virtual interface toward the * destination. * * @param metric the routing metric. * * @param policytags a set of policy tags used for redistribution. */ virtual XrlCmdError rib_0_1_add_interface_route4( // Input values, const string& protocol, const bool& unicast, const bool& multicast, const IPv4Net& network, const IPv4& nexthop, const string& ifname, const string& vifname, const uint32_t& metric, const XrlAtomList& policytags) = 0; virtual XrlCmdError rib_0_1_add_interface_route6( // Input values, const string& protocol, const bool& unicast, const bool& multicast, const IPv6Net& network, const IPv6& nexthop, const string& ifname, const string& vifname, const uint32_t& metric, const XrlAtomList& policytags) = 0; virtual XrlCmdError rib_0_1_replace_interface_route4( // Input values, const string& protocol, const bool& unicast, const bool& multicast, const IPv4Net& network, const IPv4& nexthop, const string& ifname, const string& vifname, const uint32_t& metric, const XrlAtomList& policytags) = 0; virtual XrlCmdError rib_0_1_replace_interface_route6( // Input values, const string& protocol, const bool& unicast, const bool& multicast, const IPv6Net& network, const IPv6& nexthop, const string& ifname, const string& vifname, const uint32_t& metric, const XrlAtomList& policytags) = 0; /** * Pure-virtual function that needs to be implemented to: * * Lookup nexthop. * * @param addr address to lookup. * * @param unicast look in unicast RIB. * * @param multicast look in multicast RIB. * * @param nexthop contains the resolved nexthop if successful, IPv4::ZERO * otherwise. It is an error for the unicast and multicast fields to both * be true or both false. */ virtual XrlCmdError rib_0_1_lookup_route_by_dest4( // Input values, const IPv4& addr, const bool& unicast, const bool& multicast, // Output values, IPv4& nexthop) = 0; /** * Pure-virtual function that needs to be implemented to: * * Lookup nexthop. * * @param addr address to lookup. * * @param unicast look in unicast RIB. * * @param multicast look in multicast RIB. * * @param nexthop contains the resolved nexthop if successful, IPv6::ZERO * otherwise. It is an error for the unicast and multicast fields to both * be true or both false. */ virtual XrlCmdError rib_0_1_lookup_route_by_dest6( // Input values, const IPv6& addr, const bool& unicast, const bool& multicast, // Output values, IPv6& nexthop) = 0; /** * Pure-virtual function that needs to be implemented to: * * Add a vif or a vif address to the RIB. This interface should be used * only for testing purpose. * * @param name the name of the vif. */ virtual XrlCmdError rib_0_1_new_vif( // Input values, const string& name) = 0; /** * Pure-virtual function that needs to be implemented to: * * Add a vif address to the RIB. This interface should be used only for * testing purpose. * * @param name the name of the vif. * * @param addr the address to add. * * @param subnet the subnet address to add. */ virtual XrlCmdError rib_0_1_add_vif_addr4( // Input values, const string& name, const IPv4& addr, const IPv4Net& subnet) = 0; virtual XrlCmdError rib_0_1_add_vif_addr6( // Input values, const string& name, const IPv6& addr, const IPv6Net& subnet) = 0; /** * Pure-virtual function that needs to be implemented to: * * Enable route redistribution from one routing protocol to another. * * @param to_xrl_target the XRL Target instance name of the caller. The * caller must implement redist4/0.1. * * @param from_protocol the name of the routing process routes are to be * redistributed from. * * @param unicast enable for unicast RIBs matching from and to. * * @param multicast enable for multicast RIBs matching from and to. * * @param network_prefix redistribite only the routes that fall into this * prefix address. * * @param cookie a text value passed back to creator in each call from the * RIB. This allows creators to identity the source of updates it receives * through the redist4/0.1 interface. */ virtual XrlCmdError rib_0_1_redist_enable4( // Input values, const string& to_xrl_target, const string& from_protocol, const bool& unicast, const bool& multicast, const IPv4Net& network_prefix, const string& cookie) = 0; /** * Pure-virtual function that needs to be implemented to: * * Enable route redistribution from one routing protocol to another. * * @param to_xrl_target the XRL Target instance name of the caller. The * caller must implement redist6/0.1. * * @param from_protocol the name of the routing process routes are to be * redistributed from. * * @param unicast enable for unicast RIBs matching from and to. * * @param multicast enable for multicast RIBs matching from and to. * * @param network_prefix redistribite only the routes that fall into this * prefix address. * * @param cookie a text value passed back to creator in each call from the * RIB. This allows creators to identity the source of updates it receives * through the redist6/0.1 interface. */ virtual XrlCmdError rib_0_1_redist_enable6( // Input values, const string& to_xrl_target, const string& from_protocol, const bool& unicast, const bool& multicast, const IPv6Net& network_prefix, const string& cookie) = 0; /** * Pure-virtual function that needs to be implemented to: * * Disable route redistribution from one routing protocol to another. * * @param to_xrl_target the XRL Target instance name of the caller. The * caller must implement redist4/0.1 and previously called redist_enable4. * * @param unicast disable for unicast RIBs matching from and to. * * @param multicast disable for multicast RIBs matching from and to. * * @param cookie a text value passed back to creator in each call from the * RIB. This allows creators to identity the source of updates it receives * through the redist4/0.1 interface. */ virtual XrlCmdError rib_0_1_redist_disable4( // Input values, const string& to_xrl_target, const string& from_protocol, const bool& unicast, const bool& multicast, const string& cookie) = 0; /** * Pure-virtual function that needs to be implemented to: * * Disable route redistribution from one routing protocol to another. * * @param to_xrl_target the XRL Target instance name of the caller. The * caller must implement redist6/0.1 and previously called redist_enable6. * * @param unicast disable for unicast RIBs matching from and to. * * @param multicast disable for multicast RIBs matching from and to. * * @param cookie a text value passed back to creator in each call from the * RIB. This allows creators to identity the source of updates it receives * through the redist6/0.1 interface. */ virtual XrlCmdError rib_0_1_redist_disable6( // Input values, const string& to_xrl_target, const string& from_protocol, const bool& unicast, const bool& multicast, const string& cookie) = 0; /** * Pure-virtual function that needs to be implemented to: * * Enable transaction-based route redistribution from one routing protocol * to another. * * @param to_xrl_target the XRL Target instance name of the caller. The * caller must implement redist_transaction4/0.1. * * @param from_protocol the name of the routing process routes are to be * redistributed from. * * @param unicast enable for unicast RIBs matching from and to. * * @param multicast enable for multicast RIBs matching from and to. * * @param network_prefix redistribite only the routes that fall into this * prefix address. * * @param cookie a text value passed back to creator in each call from the * RIB. This allows creators to identity the source of updates it receives * through the redist_transaction4/0.1 interface. */ virtual XrlCmdError rib_0_1_redist_transaction_enable4( // Input values, const string& to_xrl_target, const string& from_protocol, const bool& unicast, const bool& multicast, const IPv4Net& network_prefix, const string& cookie) = 0; /** * Pure-virtual function that needs to be implemented to: * * Enable transaction-based route redistribution from one routing protocol * to another. * * @param to_xrl_target the XRL Target instance name of the caller. The * caller must implement redist_transaction6/0.1. * * @param from_protocol the name of the routing process routes are to be * redistributed from. * * @param unicast enable for unicast RIBs matching from and to. * * @param multicast enable for multicast RIBs matching from and to. * * @param network_prefix redistribite only the routes that fall into this * prefix address. * * @param cookie a text value passed back to creator in each call from the * RIB. This allows creators to identity the source of updates it receives * through the redist_transaction6/0.1 interface. */ virtual XrlCmdError rib_0_1_redist_transaction_enable6( // Input values, const string& to_xrl_target, const string& from_protocol, const bool& unicast, const bool& multicast, const IPv6Net& network_prefix, const string& cookie) = 0; /** * Pure-virtual function that needs to be implemented to: * * Disable transaction-based route redistribution from one routing * protocol to another. * * @param to_xrl_target the XRL Target instance name of the caller. The * caller must implement redist_transaction4/0.1 and previously called * redist_transaction_enable4. * * @param unicast disable for unicast RIBs matching from and to. * * @param multicast disable for multicast RIBs matching from and to. *
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -