📄 bgp_base.cc
字号:
if (xa_inputs.size() != 5) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(5), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/set_nexthop4"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = bgp_0_2_set_nexthop4( xa_inputs.get_string("local_ip"), xa_inputs.get_uint32("local_port"), xa_inputs.get_string("peer_ip"), xa_inputs.get_uint32("peer_port"), xa_inputs.get_ipv4("next_hop")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/set_nexthop4", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_set_nexthop6(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 5) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(5), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/set_nexthop6"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = bgp_0_2_set_nexthop6( xa_inputs.get_string("local_ip"), xa_inputs.get_uint32("local_port"), xa_inputs.get_string("peer_ip"), xa_inputs.get_uint32("peer_port"), xa_inputs.get_ipv6("next_hop")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/set_nexthop6", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_get_nexthop6(const XrlArgs& xa_inputs, XrlArgs* pxa_outputs){ if (xa_inputs.size() != 4) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(4), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/get_nexthop6"); return XrlCmdError::BAD_ARGS(); } if (pxa_outputs == 0) { XLOG_FATAL("Return list empty"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ IPv6 next_hop; try { XrlCmdError e = bgp_0_2_get_nexthop6( xa_inputs.get_string("local_ip"), xa_inputs.get_uint32("local_port"), xa_inputs.get_string("peer_ip"), xa_inputs.get_uint32("peer_port"), next_hop); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/get_nexthop6", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } /* Marshall return values */ try { pxa_outputs->add("next_hop", next_hop); } catch (const XrlArgs::XrlAtomFound& ) { XLOG_FATAL("Duplicate atom name"); /* XXX Should never happen */ } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_set_peer_state(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 5) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(5), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/set_peer_state"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = bgp_0_2_set_peer_state( xa_inputs.get_string("local_ip"), xa_inputs.get_uint32("local_port"), xa_inputs.get_string("peer_ip"), xa_inputs.get_uint32("peer_port"), xa_inputs.get_bool("toggle")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/set_peer_state", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_set_peer_md5_password(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 5) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(5), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/set_peer_md5_password"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = bgp_0_2_set_peer_md5_password( xa_inputs.get_string("local_ip"), xa_inputs.get_uint32("local_port"), xa_inputs.get_string("peer_ip"), xa_inputs.get_uint32("peer_port"), xa_inputs.get_string("password")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/set_peer_md5_password", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_activate(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 4) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(4), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/activate"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = bgp_0_2_activate( xa_inputs.get_string("local_ip"), xa_inputs.get_uint32("local_port"), xa_inputs.get_string("peer_ip"), xa_inputs.get_uint32("peer_port")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/activate", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_set_parameter(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 6) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(6), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/set_parameter"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = bgp_0_2_set_parameter( xa_inputs.get_string("local_ip"), xa_inputs.get_uint32("local_port"), xa_inputs.get_string("peer_ip"), xa_inputs.get_uint32("peer_port"), xa_inputs.get_string("parameter"), xa_inputs.get_bool("toggle")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/set_parameter", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_next_hop_rewrite_filter(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 5) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(5), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/next_hop_rewrite_filter"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = bgp_0_2_next_hop_rewrite_filter( xa_inputs.get_string("local_ip"), xa_inputs.get_uint32("local_port"), xa_inputs.get_string("peer_ip"), xa_inputs.get_uint32("peer_port"), xa_inputs.get_ipv4("next_hop")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/next_hop_rewrite_filter", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_originate_route4(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 4) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(4), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/originate_route4"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = bgp_0_2_originate_route4( xa_inputs.get_ipv4net("nlri"), xa_inputs.get_ipv4("next_hop"), xa_inputs.get_bool("unicast"), xa_inputs.get_bool("multicast")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/originate_route4", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_originate_route6(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 4) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(4), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/originate_route6"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = bgp_0_2_originate_route6( xa_inputs.get_ipv6net("nlri"), xa_inputs.get_ipv6("next_hop"), xa_inputs.get_bool("unicast"), xa_inputs.get_bool("multicast")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/originate_route6", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_withdraw_route4(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 3) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(3), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/withdraw_route4"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = bgp_0_2_withdraw_route4( xa_inputs.get_ipv4net("nlri"), xa_inputs.get_bool("unicast"), xa_inputs.get_bool("multicast")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/withdraw_route4", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_withdraw_route6(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 3) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(3), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/withdraw_route6"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = bgp_0_2_withdraw_route6( xa_inputs.get_ipv6net("nlri"), xa_inputs.get_bool("unicast"), xa_inputs.get_bool("multicast")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/withdraw_route6", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_trace(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 2) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(2), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/trace"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = bgp_0_2_trace( xa_inputs.get_string("tvar"), xa_inputs.get_bool("enable")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/trace", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlBgpTargetBase::handle_bgp_0_2_get_peer_list_start(const XrlArgs& xa_inputs, XrlArgs* pxa_outputs){ if (xa_inputs.size() != 0) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(0), XORP_UINT_CAST(xa_inputs.size()), "bgp/0.2/get_peer_list_start"); return XrlCmdError::BAD_ARGS(); } if (pxa_outputs == 0) { XLOG_FATAL("Return list empty"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ uint32_t token; bool more; try { XrlCmdError e = bgp_0_2_get_peer_list_start( token, more); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "bgp/0.2/get_peer_list_start", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } /* Marshall return values */ try { pxa_outputs->add("token", token); pxa_outputs->add("more", more); } catch (const XrlArgs::XrlAtomFound& ) { XLOG_FATAL("Duplicate atom name"); /* XXX Should never happen */ } return XrlCmdError::OKAY();}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -