pim_base.cc

来自「BCAST Implementation for NS2」· CC 代码 · 共 2,099 行 · 第 1/5 页

CC
2,099
字号
const XrlCmdErrorXrlPimTargetBase::handle_fti_0_2_lookup_entry6(const XrlArgs& xa_inputs, XrlArgs* pxa_outputs){    if (xa_inputs.size() != 1) {	XLOG_ERROR("Wrong number of arguments (%u != 1) handling fti/0.2/lookup_entry6",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    if (pxa_outputs == 0) {	XLOG_FATAL("Return list empty");	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    IPv6 gateway;    string ifname;    string vifname;    uint32_t metric;    uint32_t admin_distance;    string protocol_origin;    try {	XrlCmdError e = fti_0_2_lookup_entry6(	    xa_inputs.get_ipv6net("dst"),	    gateway,	    ifname,	    vifname,	    metric,	    admin_distance,	    protocol_origin);	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for fti/0.2/lookup_entry6 failed: %s",            		 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("gateway", gateway);	pxa_outputs->add("ifname", ifname);	pxa_outputs->add("vifname", vifname);	pxa_outputs->add("metric", metric);	pxa_outputs->add("admin_distance", admin_distance);	pxa_outputs->add("protocol_origin", protocol_origin);    } catch (const XrlArgs::XrlAtomFound& ) {	XLOG_FATAL("Duplicate atom name"); /* XXX Should never happen */    }    return XrlCmdError::OKAY();}const XrlCmdErrorXrlPimTargetBase::handle_fti_0_2_have_ipv4(const XrlArgs& xa_inputs, XrlArgs* pxa_outputs){    if (xa_inputs.size() != 0) {	XLOG_ERROR("Wrong number of arguments (%u != 0) handling fti/0.2/have_ipv4",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    if (pxa_outputs == 0) {	XLOG_FATAL("Return list empty");	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    bool result;    try {	XrlCmdError e = fti_0_2_have_ipv4(	    result);	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for fti/0.2/have_ipv4 failed: %s",            		 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("result", result);    } catch (const XrlArgs::XrlAtomFound& ) {	XLOG_FATAL("Duplicate atom name"); /* XXX Should never happen */    }    return XrlCmdError::OKAY();}const XrlCmdErrorXrlPimTargetBase::handle_fti_0_2_have_ipv6(const XrlArgs& xa_inputs, XrlArgs* pxa_outputs){    if (xa_inputs.size() != 0) {	XLOG_ERROR("Wrong number of arguments (%u != 0) handling fti/0.2/have_ipv6",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    if (pxa_outputs == 0) {	XLOG_FATAL("Return list empty");	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    bool result;    try {	XrlCmdError e = fti_0_2_have_ipv6(	    result);	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for fti/0.2/have_ipv6 failed: %s",            		 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("result", result);    } catch (const XrlArgs::XrlAtomFound& ) {	XLOG_FATAL("Duplicate atom name"); /* XXX Should never happen */    }    return XrlCmdError::OKAY();}const XrlCmdErrorXrlPimTargetBase::handle_fti_0_2_get_unicast_forwarding_enabled4(const XrlArgs& xa_inputs, XrlArgs* pxa_outputs){    if (xa_inputs.size() != 0) {	XLOG_ERROR("Wrong number of arguments (%u != 0) handling fti/0.2/get_unicast_forwarding_enabled4",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    if (pxa_outputs == 0) {	XLOG_FATAL("Return list empty");	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    bool enabled;    try {	XrlCmdError e = fti_0_2_get_unicast_forwarding_enabled4(	    enabled);	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for fti/0.2/get_unicast_forwarding_enabled4 failed: %s",            		 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("enabled", enabled);    } catch (const XrlArgs::XrlAtomFound& ) {	XLOG_FATAL("Duplicate atom name"); /* XXX Should never happen */    }    return XrlCmdError::OKAY();}const XrlCmdErrorXrlPimTargetBase::handle_fti_0_2_get_unicast_forwarding_enabled6(const XrlArgs& xa_inputs, XrlArgs* pxa_outputs){    if (xa_inputs.size() != 0) {	XLOG_ERROR("Wrong number of arguments (%u != 0) handling fti/0.2/get_unicast_forwarding_enabled6",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    if (pxa_outputs == 0) {	XLOG_FATAL("Return list empty");	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    bool enabled;    try {	XrlCmdError e = fti_0_2_get_unicast_forwarding_enabled6(	    enabled);	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for fti/0.2/get_unicast_forwarding_enabled6 failed: %s",            		 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("enabled", enabled);    } catch (const XrlArgs::XrlAtomFound& ) {	XLOG_FATAL("Duplicate atom name"); /* XXX Should never happen */    }    return XrlCmdError::OKAY();}const XrlCmdErrorXrlPimTargetBase::handle_fti_0_2_set_unicast_forwarding_enabled4(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){    if (xa_inputs.size() != 1) {	XLOG_ERROR("Wrong number of arguments (%u != 1) handling fti/0.2/set_unicast_forwarding_enabled4",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    try {	XrlCmdError e = fti_0_2_set_unicast_forwarding_enabled4(	    xa_inputs.get_bool("enabled"));	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for fti/0.2/set_unicast_forwarding_enabled4 failed: %s",            		 e.str().c_str());	    return e;        }    } catch (const XrlArgs::XrlAtomNotFound& e) {	XLOG_ERROR("Argument not found");	return XrlCmdError::BAD_ARGS();    }    return XrlCmdError::OKAY();}const XrlCmdErrorXrlPimTargetBase::handle_fti_0_2_set_unicast_forwarding_enabled6(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){    if (xa_inputs.size() != 1) {	XLOG_ERROR("Wrong number of arguments (%u != 1) handling fti/0.2/set_unicast_forwarding_enabled6",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    try {	XrlCmdError e = fti_0_2_set_unicast_forwarding_enabled6(	    xa_inputs.get_bool("enabled"));	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for fti/0.2/set_unicast_forwarding_enabled6 failed: %s",            		 e.str().c_str());	    return e;        }    } catch (const XrlArgs::XrlAtomNotFound& e) {	XLOG_ERROR("Argument not found");	return XrlCmdError::BAD_ARGS();    }    return XrlCmdError::OKAY();}const XrlCmdErrorXrlPimTargetBase::handle_mld6igmp_client_0_1_add_membership4(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){    if (xa_inputs.size() != 5) {	XLOG_ERROR("Wrong number of arguments (%u != 5) handling mld6igmp_client/0.1/add_membership4",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    try {	XrlCmdError e = mld6igmp_client_0_1_add_membership4(	    xa_inputs.get_string("xrl_sender_name"),	    xa_inputs.get_string("vif_name"),	    xa_inputs.get_uint32("vif_index"),	    xa_inputs.get_ipv4("source"),	    xa_inputs.get_ipv4("group"));	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for mld6igmp_client/0.1/add_membership4 failed: %s",            		 e.str().c_str());	    return e;        }    } catch (const XrlArgs::XrlAtomNotFound& e) {	XLOG_ERROR("Argument not found");	return XrlCmdError::BAD_ARGS();    }    return XrlCmdError::OKAY();}const XrlCmdErrorXrlPimTargetBase::handle_mld6igmp_client_0_1_add_membership6(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){    if (xa_inputs.size() != 5) {	XLOG_ERROR("Wrong number of arguments (%u != 5) handling mld6igmp_client/0.1/add_membership6",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    try {	XrlCmdError e = mld6igmp_client_0_1_add_membership6(	    xa_inputs.get_string("xrl_sender_name"),	    xa_inputs.get_string("vif_name"),	    xa_inputs.get_uint32("vif_index"),	    xa_inputs.get_ipv6("source"),	    xa_inputs.get_ipv6("group"));	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for mld6igmp_client/0.1/add_membership6 failed: %s",            		 e.str().c_str());	    return e;        }    } catch (const XrlArgs::XrlAtomNotFound& e) {	XLOG_ERROR("Argument not found");	return XrlCmdError::BAD_ARGS();    }    return XrlCmdError::OKAY();}const XrlCmdErrorXrlPimTargetBase::handle_mld6igmp_client_0_1_delete_membership4(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){    if (xa_inputs.size() != 5) {	XLOG_ERROR("Wrong number of arguments (%u != 5) handling mld6igmp_client/0.1/delete_membership4",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    try {	XrlCmdError e = mld6igmp_client_0_1_delete_membership4(	    xa_inputs.get_string("xrl_sender_name"),	    xa_inputs.get_string("vif_name"),	    xa_inputs.get_uint32("vif_index"),	    xa_inputs.get_ipv4("source"),	    xa_inputs.get_ipv4("group"));	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for mld6igmp_client/0.1/delete_membership4 failed: %s",            		 e.str().c_str());	    return e;        }    } catch (const XrlArgs::XrlAtomNotFound& e) {	XLOG_ERROR("Argument not found");	return XrlCmdError::BAD_ARGS();    }    return XrlCmdError::OKAY();}const XrlCmdErrorXrlPimTargetBase::handle_mld6igmp_client_0_1_delete_membership6(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){    if (xa_inputs.size() != 5) {	XLOG_ERROR("Wrong number of arguments (%u != 5) handling mld6igmp_client/0.1/delete_membership6",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    try {	XrlCmdError e = mld6igmp_client_0_1_delete_membership6(	    xa_inputs.get_string("xrl_sender_name"),	    xa_inputs.get_string("vif_name"),	    xa_inputs.get_uint32("vif_index"),	    xa_inputs.get_ipv6("source"),	    xa_inputs.get_ipv6("group"));	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for mld6igmp_client/0.1/delete_membership6 failed: %s",            		 e.str().c_str());	    return e;        }    } catch (const XrlArgs::XrlAtomNotFound& e) {	XLOG_ERROR("Argument not found");	return XrlCmdError::BAD_ARGS();    }    return XrlCmdError::OKAY();}const XrlCmdErrorXrlPimTargetBase::handle_pim_0_1_enable_vif(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){    if (xa_inputs.size() != 1) {	XLOG_ERROR("Wrong number of arguments (%u != 1) handling pim/0.1/enable_vif",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    try {	XrlCmdError e = pim_0_1_enable_vif(	    xa_inputs.get_string("vif_name"));	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for pim/0.1/enable_vif failed: %s",            		 e.str().c_str());	    return e;        }    } catch (const XrlArgs::XrlAtomNotFound& e) {	XLOG_ERROR("Argument not found");	return XrlCmdError::BAD_ARGS();    }    return XrlCmdError::OKAY();}const XrlCmdErrorXrlPimTargetBase::handle_pim_0_1_disable_vif(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){    if (xa_inputs.size() != 1) {	XLOG_ERROR("Wrong number of arguments (%u != 1) handling pim/0.1/disable_vif",            (uint32_t)xa_inputs.size());	return XrlCmdError::BAD_ARGS();    }    /* Return value declarations */    try {	XrlCmdError e = pim_0_1_disable_vif(	    xa_inputs.get_string("vif_name"));	if (e != XrlCmdError::OKAY()) {	    XLOG_WARNING("Handling method for pim/0.1/disable_vif failed: %s",            		 e.str().c_str());	    return e;        }    } catch (const XrlArgs::XrlAtomNotFound& e) {	XLOG_ERROR("Argument not found");	return XrlCmdError::BAD_ARGS();    }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?