pim_base.hh
来自「BCAST Implementation for NS2」· HH 代码 · 共 2,220 行 · 第 1/5 页
HH
2,220 行
// Input values, const string& xrl_sender_name, const string& vif_name, const uint32_t& vif_index, const IPv6& source, const IPv6& group) = 0; /** * Pure-virtual function that needs to be implemented to: * * Enable/disable/start/stop a PIM vif interface. * * @param vif_name the name of the vif to enable/disable/start/stop. */ virtual XrlCmdError pim_0_1_enable_vif( // Input values, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_disable_vif( // Input values, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_start_vif( // Input values, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_stop_vif( // Input values, const string& vif_name) = 0; /** * Pure-virtual function that needs to be implemented to: * * Enable/disable/start/stop all PIM vif interfaces. */ virtual XrlCmdError pim_0_1_enable_all_vifs() = 0; virtual XrlCmdError pim_0_1_disable_all_vifs() = 0; virtual XrlCmdError pim_0_1_start_all_vifs() = 0; virtual XrlCmdError pim_0_1_stop_all_vifs() = 0; /** * Pure-virtual function that needs to be implemented to: * * Enable/disable/start/stop PIM protocol and PIM CLI access. */ virtual XrlCmdError pim_0_1_enable_pim() = 0; virtual XrlCmdError pim_0_1_disable_pim() = 0; virtual XrlCmdError pim_0_1_enable_cli() = 0; virtual XrlCmdError pim_0_1_disable_cli() = 0; virtual XrlCmdError pim_0_1_start_pim() = 0; virtual XrlCmdError pim_0_1_stop_pim() = 0; virtual XrlCmdError pim_0_1_start_cli() = 0; virtual XrlCmdError pim_0_1_stop_cli() = 0; /** * Pure-virtual function that needs to be implemented to: * * Enable/disable/start/stop BSR. */ virtual XrlCmdError pim_0_1_enable_bsr() = 0; virtual XrlCmdError pim_0_1_disable_bsr() = 0; virtual XrlCmdError pim_0_1_start_bsr() = 0; virtual XrlCmdError pim_0_1_stop_bsr() = 0; /** * Pure-virtual function that needs to be implemented to: * * Add/delete scope zone. * * @param scope_zone_id the ID of the configured zone. * * @param vif_name the name of the vif to use as a bondary of the scope * zone. */ virtual XrlCmdError pim_0_1_add_config_scope_zone_by_vif_name4( // Input values, const IPv4Net& scope_zone_id, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_add_config_scope_zone_by_vif_name6( // Input values, const IPv6Net& scope_zone_id, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_add_config_scope_zone_by_vif_addr4( // Input values, const IPv4Net& scope_zone_id, const IPv4& vif_addr) = 0; virtual XrlCmdError pim_0_1_add_config_scope_zone_by_vif_addr6( // Input values, const IPv6Net& scope_zone_id, const IPv6& vif_addr) = 0; virtual XrlCmdError pim_0_1_delete_config_scope_zone_by_vif_name4( // Input values, const IPv4Net& scope_zone_id, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_delete_config_scope_zone_by_vif_name6( // Input values, const IPv6Net& scope_zone_id, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_delete_config_scope_zone_by_vif_addr4( // Input values, const IPv4Net& scope_zone_id, const IPv4& vif_addr) = 0; virtual XrlCmdError pim_0_1_delete_config_scope_zone_by_vif_addr6( // Input values, const IPv6Net& scope_zone_id, const IPv6& vif_addr) = 0; /** * Pure-virtual function that needs to be implemented to: * * Add/delete candidate-BSR configuration. * * @param scope_zone_id the ID of the configured zone. * * @param is_scope_zone true if configuring administratively scoped zone. * * @param vif_name the name of the vif to use its address as a * candidate-BSR. * * @param bsr_priority the BSR priority (larger is better). * * @param hash_mask_len the hash mask length. */ virtual XrlCmdError pim_0_1_add_config_cand_bsr_by_vif_name4( // Input values, const IPv4Net& scope_zone_id, const bool& is_scope_zone, const string& vif_name, const uint32_t& bsr_priority, const uint32_t& hash_mask_len) = 0; virtual XrlCmdError pim_0_1_add_config_cand_bsr_by_vif_name6( // Input values, const IPv6Net& scope_zone_id, const bool& is_scope_zone, const string& vif_name, const uint32_t& bsr_priority, const uint32_t& hash_mask_len) = 0; virtual XrlCmdError pim_0_1_add_config_cand_bsr_by_addr4( // Input values, const IPv4Net& scope_zone_id, const bool& is_scope_zone, const IPv4& cand_bsr_addr, const uint32_t& bsr_priority, const uint32_t& hash_mask_len) = 0; virtual XrlCmdError pim_0_1_add_config_cand_bsr_by_addr6( // Input values, const IPv6Net& scope_zone_id, const bool& is_scope_zone, const IPv6& cand_bsr_addr, const uint32_t& bsr_priority, const uint32_t& hash_mask_len) = 0; virtual XrlCmdError pim_0_1_delete_config_cand_bsr4( // Input values, const IPv4Net& scope_zone_id, const bool& is_scope_zone) = 0; virtual XrlCmdError pim_0_1_delete_config_cand_bsr6( // Input values, const IPv6Net& scope_zone_id, const bool& is_scope_zone) = 0; /** * Pure-virtual function that needs to be implemented to: * * Add/delete Candidate-RP configuration. * * @param group_prefix the group prefix of the configured zone. * * @param is_scope_zone true if configuring administratively scoped zone. * * @param vif_name the name of the vif to use its address as a * candidate-RP. * * @param rp_priority the Cand-RP priority (smaller is better). * * @param rp_holdtime the Cand-RP holdtime (in seconds). */ virtual XrlCmdError pim_0_1_add_config_cand_rp_by_vif_name4( // Input values, const IPv4Net& group_prefix, const bool& is_scope_zone, const string& vif_name, const uint32_t& rp_priority, const uint32_t& rp_holdtime) = 0; virtual XrlCmdError pim_0_1_add_config_cand_rp_by_vif_name6( // Input values, const IPv6Net& group_prefix, const bool& is_scope_zone, const string& vif_name, const uint32_t& rp_priority, const uint32_t& rp_holdtime) = 0; virtual XrlCmdError pim_0_1_add_config_cand_rp_by_addr4( // Input values, const IPv4Net& group_prefix, const bool& is_scope_zone, const IPv4& cand_rp_addr, const uint32_t& rp_priority, const uint32_t& rp_holdtime) = 0; virtual XrlCmdError pim_0_1_add_config_cand_rp_by_addr6( // Input values, const IPv6Net& group_prefix, const bool& is_scope_zone, const IPv6& cand_rp_addr, const uint32_t& rp_priority, const uint32_t& rp_holdtime) = 0; virtual XrlCmdError pim_0_1_delete_config_cand_rp_by_vif_name4( // Input values, const IPv4Net& group_prefix, const bool& is_scope_zone, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_delete_config_cand_rp_by_vif_name6( // Input values, const IPv6Net& group_prefix, const bool& is_scope_zone, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_delete_config_cand_rp_by_addr4( // Input values, const IPv4Net& group_prefix, const bool& is_scope_zone, const IPv4& cand_rp_addr) = 0; virtual XrlCmdError pim_0_1_delete_config_cand_rp_by_addr6( // Input values, const IPv6Net& group_prefix, const bool& is_scope_zone, const IPv6& cand_rp_addr) = 0; /** * Pure-virtual function that needs to be implemented to: * * Add/delete/complete static RP configuration. * * @param group_prefix the group prefix for the RP. * * @param rp_addr the RP address. * * @param rp_priority the RP priority (smaller is better). * * @param hash_mask_len the hash mask length used in computing an RP for a * group. It should be same across all RPs. If set to zero, the default * one will be used. */ virtual XrlCmdError pim_0_1_add_config_static_rp4( // Input values, const IPv4Net& group_prefix, const IPv4& rp_addr, const uint32_t& rp_priority, const uint32_t& hash_mask_len) = 0; virtual XrlCmdError pim_0_1_add_config_static_rp6( // Input values, const IPv6Net& group_prefix, const IPv6& rp_addr, const uint32_t& rp_priority, const uint32_t& hash_mask_len) = 0; virtual XrlCmdError pim_0_1_delete_config_static_rp4( // Input values, const IPv4Net& group_prefix, const IPv4& rp_addr) = 0; virtual XrlCmdError pim_0_1_delete_config_static_rp6( // Input values, const IPv6Net& group_prefix, const IPv6& rp_addr) = 0; virtual XrlCmdError pim_0_1_config_static_rp_done() = 0; /** * Pure-virtual function that needs to be implemented to: * * Configure PIM Hello-related metrics. The 'set_foo' XRLs set the * particular values. The 'reset_foo' XRLs reset the metrics to their * default values. * * @param vif_name the name of the vif to configure. * * @param proto_version the protocol version. */ virtual XrlCmdError pim_0_1_get_vif_proto_version( // Input values, const string& vif_name, // Output values, uint32_t& proto_version) = 0; virtual XrlCmdError pim_0_1_set_vif_proto_version( // Input values, const string& vif_name, const uint32_t& proto_version) = 0; virtual XrlCmdError pim_0_1_reset_vif_proto_version( // Input values, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_get_vif_hello_triggered_delay( // Input values, const string& vif_name, // Output values, uint32_t& hello_triggered_delay) = 0; virtual XrlCmdError pim_0_1_set_vif_hello_triggered_delay( // Input values, const string& vif_name, const uint32_t& hello_triggered_delay) = 0; virtual XrlCmdError pim_0_1_reset_vif_hello_triggered_delay( // Input values, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_get_vif_hello_period( // Input values, const string& vif_name, // Output values, uint32_t& hello_period) = 0; virtual XrlCmdError pim_0_1_set_vif_hello_period( // Input values, const string& vif_name, const uint32_t& hello_period) = 0; virtual XrlCmdError pim_0_1_reset_vif_hello_period( // Input values, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_get_vif_hello_holdtime( // Input values, const string& vif_name, // Output values, uint32_t& hello_holdtime) = 0; virtual XrlCmdError pim_0_1_set_vif_hello_holdtime( // Input values, const string& vif_name, const uint32_t& hello_holdtime) = 0; virtual XrlCmdError pim_0_1_reset_vif_hello_holdtime( // Input values, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_get_vif_dr_priority( // Input values, const string& vif_name, // Output values, uint32_t& dr_priority) = 0; virtual XrlCmdError pim_0_1_set_vif_dr_priority( // Input values, const string& vif_name, const uint32_t& dr_priority) = 0; virtual XrlCmdError pim_0_1_reset_vif_dr_priority( // Input values, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_get_vif_lan_delay( // Input values, const string& vif_name, // Output values, uint32_t& lan_delay) = 0; virtual XrlCmdError pim_0_1_set_vif_lan_delay( // Input values, const string& vif_name, const uint32_t& lan_delay) = 0; virtual XrlCmdError pim_0_1_reset_vif_lan_delay( // Input values, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_get_vif_override_interval( // Input values, const string& vif_name, // Output values, uint32_t& override_interval) = 0; virtual XrlCmdError pim_0_1_set_vif_override_interval( // Input values, const string& vif_name, const uint32_t& override_interval) = 0; virtual XrlCmdError pim_0_1_reset_vif_override_interval( // Input values, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_get_vif_is_tracking_support_disabled( // Input values, const string& vif_name, // Output values, bool& is_tracking_support_disabled) = 0; virtual XrlCmdError pim_0_1_set_vif_is_tracking_support_disabled( // Input values, const string& vif_name, const bool& is_tracking_support_disabled) = 0; virtual XrlCmdError pim_0_1_reset_vif_is_tracking_support_disabled( // Input values, const string& vif_name) = 0; virtual XrlCmdError pim_0_1_get_vif_accept_nohello_neighbors( // Input values, const string& vif_name, // Output values, bool& accept_nohello_neighbors) = 0; virtual XrlCmdError pim_0_1_set_vif_accept_nohello_neighbors( // Input values, const string& vif_name, const bool& accept_nohello_neighbors) = 0; virtual XrlCmdError pim_0_1_reset_vif_accept_nohello_neighbors( // Input values, const string& vif_name) = 0;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?