?? xrl_mld6igmp_node.cc
字號:
enabled = v; return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_set_vif_ip_router_alert_option_check( // Input values, const string& vif_name, const bool& enable){ string error_msg; if (Mld6igmpNode::set_vif_ip_router_alert_option_check(vif_name, enable, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_reset_vif_ip_router_alert_option_check( // Input values, const string& vif_name){ string error_msg; if (Mld6igmpNode::reset_vif_ip_router_alert_option_check(vif_name, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_get_vif_query_interval( // Input values, const string& vif_name, // Output values, uint32_t& interval_sec, uint32_t& interval_usec){ string error_msg; TimeVal v; if (Mld6igmpNode::get_vif_query_interval(vif_name, v, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } interval_sec = v.sec(); interval_usec = v.usec(); return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_set_vif_query_interval( // Input values, const string& vif_name, const uint32_t& interval_sec, const uint32_t& interval_usec){ string error_msg; TimeVal interval(interval_sec, interval_usec); if (Mld6igmpNode::set_vif_query_interval(vif_name, interval, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_reset_vif_query_interval( // Input values, const string& vif_name){ string error_msg; if (Mld6igmpNode::reset_vif_query_interval(vif_name, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_get_vif_query_last_member_interval( // Input values, const string& vif_name, // Output values, uint32_t& interval_sec, uint32_t& interval_usec){ string error_msg; TimeVal v; if (Mld6igmpNode::get_vif_query_last_member_interval(vif_name, v, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } interval_sec = v.sec(); interval_usec = v.usec(); return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_set_vif_query_last_member_interval( // Input values, const string& vif_name, const uint32_t& interval_sec, const uint32_t& interval_usec){ string error_msg; TimeVal interval(interval_sec, interval_usec); if (Mld6igmpNode::set_vif_query_last_member_interval(vif_name, interval, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_reset_vif_query_last_member_interval( // Input values, const string& vif_name){ string error_msg; if (Mld6igmpNode::reset_vif_query_last_member_interval(vif_name, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_get_vif_query_response_interval( // Input values, const string& vif_name, // Output values, uint32_t& interval_sec, uint32_t& interval_usec){ string error_msg; TimeVal v; if (Mld6igmpNode::get_vif_query_response_interval(vif_name, v, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } interval_sec = v.sec(); interval_usec = v.usec(); return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_set_vif_query_response_interval( // Input values, const string& vif_name, const uint32_t& interval_sec, const uint32_t& interval_usec){ string error_msg; TimeVal interval(interval_sec, interval_usec); if (Mld6igmpNode::set_vif_query_response_interval(vif_name, interval, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_reset_vif_query_response_interval( // Input values, const string& vif_name){ string error_msg; if (Mld6igmpNode::reset_vif_query_response_interval(vif_name, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_get_vif_robust_count( // Input values, const string& vif_name, // Output values, uint32_t& robust_count){ string error_msg; uint32_t v; if (Mld6igmpNode::get_vif_robust_count(vif_name, v, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } robust_count = v; return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_set_vif_robust_count( // Input values, const string& vif_name, const uint32_t& robust_count){ string error_msg; if (Mld6igmpNode::set_vif_robust_count(vif_name, robust_count, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_reset_vif_robust_count( // Input values, const string& vif_name){ string error_msg; if (Mld6igmpNode::reset_vif_robust_count(vif_name, error_msg) != XORP_OK) { return XrlCmdError::COMMAND_FAILED(error_msg); } return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_log_trace_all( // Input values, const bool& enable){ Mld6igmpNode::set_log_trace(enable); return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_add_protocol4( // Input values, const string& xrl_sender_name, const string& , // protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index){ string error_msg; // // Verify the address family // if (! Mld6igmpNode::is_ipv4()) { error_msg = c_format("Received protocol message with " "invalid address family: IPv4"); return XrlCmdError::COMMAND_FAILED(error_msg); } // // Verify the module ID // xorp_module_id src_module_id = static_cast<xorp_module_id>(protocol_id); if (! is_valid_module_id(src_module_id)) { error_msg = c_format("Invalid module ID = %d", XORP_INT_CAST(protocol_id)); return XrlCmdError::COMMAND_FAILED(error_msg); } if (Mld6igmpNode::add_protocol(xrl_sender_name, src_module_id, vif_index) != XORP_OK) { // TODO: must find-out and return the reason for failure error_msg = c_format("Cannot add protocol instance '%s' " "on vif %s with vif_index %d", xrl_sender_name.c_str(), vif_name.c_str(), XORP_INT_CAST(vif_index)); return XrlCmdError::COMMAND_FAILED(error_msg); } // // Send info about all existing membership on the particular vif. // Mld6igmpVif *mld6igmp_vif = Mld6igmpNode::vif_find_by_vif_index(vif_index); if (mld6igmp_vif == NULL) { Mld6igmpNode::delete_protocol(xrl_sender_name, src_module_id, vif_index); error_msg = c_format("Cannot add protocol instance '%s' " "on vif %s with vif_index %d: " "no such vif", xrl_sender_name.c_str(), vif_name.c_str(), XORP_INT_CAST(vif_index)); return XrlCmdError::COMMAND_FAILED(error_msg); } Mld6igmpGroupSet::const_iterator iter; for (iter = mld6igmp_vif->group_records().begin(); iter != mld6igmp_vif->group_records().end(); ++iter) { const Mld6igmpGroupRecord *group_record = iter->second; send_add_membership(xrl_sender_name.c_str(), src_module_id, mld6igmp_vif->vif_index(), IPvX::ZERO(family()), group_record->group()); } // // Success // return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_add_protocol6( // Input values, const string& xrl_sender_name, const string& , // protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index){ string error_msg; // // Verify the address family // if (! Mld6igmpNode::is_ipv6()) { error_msg = c_format("Received protocol message with " "invalid address family: IPv6"); return XrlCmdError::COMMAND_FAILED(error_msg); } // // Verify the module ID // xorp_module_id src_module_id = static_cast<xorp_module_id>(protocol_id); if (! is_valid_module_id(src_module_id)) { error_msg = c_format("Invalid module ID = %d", XORP_INT_CAST(protocol_id)); return XrlCmdError::COMMAND_FAILED(error_msg); } if (Mld6igmpNode::add_protocol(xrl_sender_name, src_module_id, vif_index) != XORP_OK) { // TODO: must find-out and return the reason for failure error_msg = c_format("Cannot add protocol instance '%s' " "on vif %s with vif_index %d", xrl_sender_name.c_str(), vif_name.c_str(), XORP_INT_CAST(vif_index)); return XrlCmdError::COMMAND_FAILED(error_msg); } // // Send info about all existing membership on the particular vif. // Mld6igmpVif *mld6igmp_vif = Mld6igmpNode::vif_find_by_vif_index(vif_index); if (mld6igmp_vif == NULL) { Mld6igmpNode::delete_protocol(xrl_sender_name, src_module_id, vif_index); error_msg = c_format("Cannot add protocol instance '%s' " "on vif %s with vif_index %d: " "no such vif", xrl_sender_name.c_str(), vif_name.c_str(), XORP_INT_CAST(vif_index)); return XrlCmdError::COMMAND_FAILED(error_msg); } Mld6igmpGroupSet::const_iterator iter; for (iter = mld6igmp_vif->group_records().begin(); iter != mld6igmp_vif->group_records().end(); ++iter) { const Mld6igmpGroupRecord *group_record = iter->second; send_add_membership(xrl_sender_name.c_str(), src_module_id, mld6igmp_vif->vif_index(), IPvX::ZERO(family()), group_record->group()); } // // Success // return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_delete_protocol4( // Input values, const string& xrl_sender_name, const string& , // protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index){ string error_msg; // // Verify the address family // if (! Mld6igmpNode::is_ipv4()) { error_msg = c_format("Received protocol message with " "invalid address family: IPv4"); return XrlCmdError::COMMAND_FAILED(error_msg); } // // Verify the module ID // xorp_module_id src_module_id = static_cast<xorp_module_id>(protocol_id); if (! is_valid_module_id(src_module_id)) { error_msg = c_format("Invalid module ID = %d", XORP_INT_CAST(protocol_id)); return XrlCmdError::COMMAND_FAILED(error_msg); } if (Mld6igmpNode::delete_protocol(xrl_sender_name, src_module_id, vif_index) != XORP_OK) { // TODO: must find-out and return the reason for failure error_msg = c_format("Cannot delete protocol instance '%s' " "on vif %s with vif_index %d", xrl_sender_name.c_str(), vif_name.c_str(), XORP_INT_CAST(vif_index)); return XrlCmdError::COMMAND_FAILED(error_msg); } // // Success // return XrlCmdError::OKAY();}XrlCmdErrorXrlMld6igmpNode::mld6igmp_0_1_delete_protocol6( // Input values, const string& xrl_sender_name, const string& , // protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index){ string error_msg; // // Verify the address family // if (! Mld6igmpNode::is_ipv6()) { error_msg = c_format("Received protocol message with " "invalid address family: IPv6"); return XrlCmdError::COMMAND_FAILED(error_msg); } // // Verify the module ID // xorp_module_id src_module_id = static_cast<xorp_module_id>(protocol_id); if (! is_valid_module_id(src_module_id)) { error_msg = c_format("Invalid module ID = %d", XORP_INT_CAST(protocol_id)); return XrlCmdError::COMMAND_FAILED(error_msg); } if (Mld6igmpNode::delete_protocol(xrl_sender_name, src_module_id, vif_index) != XORP_OK) { // TODO: must find-out and return the reason for failure error_msg = c_format("Cannot delete protocol instance '%s' " "on vif %s with vif_index %d", xrl_sender_name.c_str(), vif_name.c_str(), XORP_INT_CAST(vif_index)); return XrlCmdError::COMMAND_FAILED(error_msg); } // // Success // return XrlCmdError::OKAY();}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -