📄 bgp_base.hh
字号:
IPv6& nexthop, int32_t& med, int32_t& localpref, int32_t& atomic_agg, vector<uint8_t>& aggregator, int32_t& calc_localpref, vector<uint8_t>& attr_unknown, bool& valid, bool& unicast, bool& multicast) = 0; /** * Pure-virtual function that needs to be implemented to: * * Announce target birth to observer. * * @param target_class the target class name. * * @param target_instance the target instance name. */ virtual XrlCmdError finder_event_observer_0_1_xrl_target_birth( // Input values, const string& target_class, const string& target_instance) = 0; /** * Pure-virtual function that needs to be implemented to: * * Announce target death to observer. * * @param target_class the target class name. * * @param target_instance the target instance name. */ virtual XrlCmdError finder_event_observer_0_1_xrl_target_death( // Input values, const string& target_class, const string& target_instance) = 0; /** * Pure-virtual function that needs to be implemented to: * * Configure a policy filter. * * @param filter the identifier of the filter to configure. * * @param conf the configuration of the filter. */ virtual XrlCmdError policy_backend_0_1_configure( // Input values, const uint32_t& filter, const string& conf) = 0; /** * Pure-virtual function that needs to be implemented to: * * Reset a policy filter. * * @param filter the identifier of the filter to reset. */ virtual XrlCmdError policy_backend_0_1_reset( // Input values, const uint32_t& filter) = 0; /** * Pure-virtual function that needs to be implemented to: * * Push all available routes through all filters for re-filtering. */ virtual XrlCmdError policy_backend_0_1_push_routes() = 0; /** * Pure-virtual function that needs to be implemented to: * * Start route redistribution for an IPv4 route. * * @param network the route to advertise. * * @param unicast whether the route is unicast. * * @param multicast whether the route is multicast. * * @param nexthop the nexthop of the route. * * @param metric the metric of the route. * * @param policytags the set of policy-tags associated with the route. */ virtual XrlCmdError policy_redist4_0_1_add_route4( // Input values, const IPv4Net& network, const bool& unicast, const bool& multicast, const IPv4& nexthop, const uint32_t& metric, const XrlAtomList& policytags) = 0; /** * Pure-virtual function that needs to be implemented to: * * Terminate route redistribution for an IPv4 route. * * @param network the route for which advertisements should cease. * * @param unicast whether the route is unicast. * * @param multicast whether the route is multicast. */ virtual XrlCmdError policy_redist4_0_1_delete_route4( // Input values, const IPv4Net& network, const bool& unicast, const bool& multicast) = 0; /** * Pure-virtual function that needs to be implemented to: * * Start route redistribution for an IPv6 route. * * @param network the route to advertise. * * @param unicast whether the route is unicast. * * @param multicast whether the route is multicast. * * @param nexthop the nexthop of the route. * * @param metric the metric of the route. * * @param policytags the set of policy-tags associated with the route. */ virtual XrlCmdError policy_redist6_0_1_add_route6( // Input values, const IPv6Net& network, const bool& unicast, const bool& multicast, const IPv6& nexthop, const uint32_t& metric, const XrlAtomList& policytags) = 0; /** * Pure-virtual function that needs to be implemented to: * * Terminate route redistribution for an IPv6 route. * * @param network the route for which advertisements should cease. * * @param unicast whether the route is unicast. * * @param multicast whether the route is multicast. */ virtual XrlCmdError policy_redist6_0_1_delete_route6( // Input values, const IPv6Net& network, const bool& unicast, const bool& multicast) = 0; /** * Pure-virtual function that needs to be implemented to: * * Route Info Changed route_info_changed is called by the RIB on the RIB * client (typically a routing protocol) that had registered an interest * in the routing of an address. This can be because the metric and/or * nexthop changed. * * @param addr base address of the subnet that was registered * * @param prefix_len prefix length of the subnet that was registered * * @param metric the routing metric toward the address. * * @param admin_distance the administratively defined distance toward the * address. * * @param protocol_origin the name of the protocol that originated this * routing entry. */ virtual XrlCmdError rib_client_0_1_route_info_changed4( // Input values, const IPv4& addr, const uint32_t& prefix_len, const IPv4& nexthop, const uint32_t& metric, const uint32_t& admin_distance, const string& protocol_origin) = 0; virtual XrlCmdError rib_client_0_1_route_info_changed6( // Input values, const IPv6& addr, const uint32_t& prefix_len, const IPv6& nexthop, const uint32_t& metric, const uint32_t& admin_distance, const string& protocol_origin) = 0; /** * Pure-virtual function that needs to be implemented to: * * Route Info Invalid route_info_invalid is called by the RIB on the RIB * client (typically a routing protocol) that had registere d an interest * in the routing of an address. This can be because the information * previously reported as applying no longer applies for any number of * reasons. When the RIB sends this message, it has automatically * de-registered interest in the route, and the client will normally need * to send a register_interest request again. */ virtual XrlCmdError rib_client_0_1_route_info_invalid4( // Input values, const IPv4& addr, const uint32_t& prefix_len) = 0; virtual XrlCmdError rib_client_0_1_route_info_invalid6( // Input values, const IPv6& addr, const uint32_t& prefix_len) = 0; /** * Pure-virtual function that needs to be implemented to: * * Enable profiling * * @param pname profile variable */ virtual XrlCmdError profile_0_1_enable( // Input values, const string& pname) = 0; /** * Pure-virtual function that needs to be implemented to: * * Disable profiling * * @param pname profile variable */ virtual XrlCmdError profile_0_1_disable( // Input values, const string& pname) = 0; /** * Pure-virtual function that needs to be implemented to: * * Get log entries. * * @param pname profile variable * * @param instance_name to send the profiling info to. */ virtual XrlCmdError profile_0_1_get_entries( // Input values, const string& pname, const string& instance_name) = 0; /** * Pure-virtual function that needs to be implemented to: * * Clear the profiling entries * * @param pname profile variable */ virtual XrlCmdError profile_0_1_clear( // Input values, const string& pname) = 0; /** * Pure-virtual function that needs to be implemented to: * * List all the profiling variables registered with this target. */ virtual XrlCmdError profile_0_1_list( // Output values, string& info) = 0;private: const XrlCmdError handle_common_0_1_get_target_name(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_common_0_1_get_version(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_common_0_1_get_status(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_common_0_1_shutdown(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_bgp_version(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_local_config(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_local_as(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_local_as(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_bgp_id(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_bgp_id(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_confederation_identifier(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_cluster_id(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_damping(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_add_peer(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_delete_peer(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_enable_peer(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_disable_peer(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_change_local_ip(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_change_local_port(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_change_peer_port(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_peer_as(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_holdtime(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_delay_open_time(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_route_reflector_client(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_confederation_member(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_prefix_limit(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_nexthop4(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_nexthop6(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_nexthop6(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_peer_state(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_peer_md5_password(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_activate(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_set_parameter(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_next_hop_rewrite_filter(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_originate_route4(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_originate_route6(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_withdraw_route4(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_withdraw_route6(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_trace(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_peer_list_start(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_peer_list_next(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_peer_id(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_peer_status(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_peer_negotiated_version(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_peer_as(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_peer_msg_stats(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_peer_established_stats(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_peer_timer_config(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_register_rib(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_v4_route_list_start(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_v6_route_list_start(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_v4_route_list_next(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_bgp_0_2_get_v6_route_list_next(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_finder_event_observer_0_1_xrl_target_birth(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_finder_event_observer_0_1_xrl_target_death(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_policy_backend_0_1_configure(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_policy_backend_0_1_reset(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_policy_backend_0_1_push_routes(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_policy_redist4_0_1_add_route4(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_policy_redist4_0_1_delete_route4(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_policy_redist6_0_1_add_route6(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_policy_redist6_0_1_delete_route6(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_rib_client_0_1_route_info_changed4(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_rib_client_0_1_route_info_changed6(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_rib_client_0_1_route_info_invalid4(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_rib_client_0_1_route_info_invalid6(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_profile_0_1_enable(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_profile_0_1_disable(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_profile_0_1_get_entries(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_profile_0_1_clear(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_profile_0_1_list(const XrlArgs& in, XrlArgs* out); void add_handlers(); void remove_handlers();};#endif // __XRL_TARGETS_BGP_BASE_HH__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -