⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 socket6_xif.cc

📁 xorp源码hg
💻 CC
📖 第 1 页 / 共 2 页
字号:
{    Xrl x(dst_xrl_target_name, "socket6/0.1/close");    x.args().add("sockid", sockid);    return _sender->send(x, callback(this, &XrlSocket6V0p1Client::unmarshall_close, cb));}/* Unmarshall close */voidXrlSocket6V0p1Client::unmarshall_close(	const XrlError&	e,	XrlArgs*	a,	CloseCB		cb){    if (e != XrlError::OKAY()) {	cb->dispatch(e);	return;    } else if (a && a->size() != 0) {	XLOG_ERROR("Wrong number of arguments (%u != %u)", XORP_UINT_CAST(a->size()), XORP_UINT_CAST(0));	cb->dispatch(XrlError::BAD_ARGS());	return;    }    cb->dispatch(e);}boolXrlSocket6V0p1Client::send_tcp_listen(	const char*	dst_xrl_target_name,	const string&	sockid,	const uint32_t&	backlog,	const TcpListenCB&	cb){    Xrl x(dst_xrl_target_name, "socket6/0.1/tcp_listen");    x.args().add("sockid", sockid);    x.args().add("backlog", backlog);    return _sender->send(x, callback(this, &XrlSocket6V0p1Client::unmarshall_tcp_listen, cb));}/* Unmarshall tcp_listen */voidXrlSocket6V0p1Client::unmarshall_tcp_listen(	const XrlError&	e,	XrlArgs*	a,	TcpListenCB		cb){    if (e != XrlError::OKAY()) {	cb->dispatch(e);	return;    } else if (a && a->size() != 0) {	XLOG_ERROR("Wrong number of arguments (%u != %u)", XORP_UINT_CAST(a->size()), XORP_UINT_CAST(0));	cb->dispatch(XrlError::BAD_ARGS());	return;    }    cb->dispatch(e);}boolXrlSocket6V0p1Client::send_send(	const char*	dst_xrl_target_name,	const string&	sockid,	const vector<uint8_t>&	data,	const SendCB&	cb){    Xrl x(dst_xrl_target_name, "socket6/0.1/send");    x.args().add("sockid", sockid);    x.args().add("data", data);    return _sender->send(x, callback(this, &XrlSocket6V0p1Client::unmarshall_send, cb));}/* Unmarshall send */voidXrlSocket6V0p1Client::unmarshall_send(	const XrlError&	e,	XrlArgs*	a,	SendCB		cb){    if (e != XrlError::OKAY()) {	cb->dispatch(e);	return;    } else if (a && a->size() != 0) {	XLOG_ERROR("Wrong number of arguments (%u != %u)", XORP_UINT_CAST(a->size()), XORP_UINT_CAST(0));	cb->dispatch(XrlError::BAD_ARGS());	return;    }    cb->dispatch(e);}boolXrlSocket6V0p1Client::send_send_with_flags(	const char*	dst_xrl_target_name,	const string&	sockid,	const vector<uint8_t>&	data,	const bool&	out_of_band,	const bool&	end_of_record,	const bool&	end_of_file,	const SendWithFlagsCB&	cb){    Xrl x(dst_xrl_target_name, "socket6/0.1/send_with_flags");    x.args().add("sockid", sockid);    x.args().add("data", data);    x.args().add("out_of_band", out_of_band);    x.args().add("end_of_record", end_of_record);    x.args().add("end_of_file", end_of_file);    return _sender->send(x, callback(this, &XrlSocket6V0p1Client::unmarshall_send_with_flags, cb));}/* Unmarshall send_with_flags */voidXrlSocket6V0p1Client::unmarshall_send_with_flags(	const XrlError&	e,	XrlArgs*	a,	SendWithFlagsCB		cb){    if (e != XrlError::OKAY()) {	cb->dispatch(e);	return;    } else if (a && a->size() != 0) {	XLOG_ERROR("Wrong number of arguments (%u != %u)", XORP_UINT_CAST(a->size()), XORP_UINT_CAST(0));	cb->dispatch(XrlError::BAD_ARGS());	return;    }    cb->dispatch(e);}boolXrlSocket6V0p1Client::send_send_to(	const char*	dst_xrl_target_name,	const string&	sockid,	const IPv6&	remote_addr,	const uint32_t&	remote_port,	const vector<uint8_t>&	data,	const SendToCB&	cb){    Xrl x(dst_xrl_target_name, "socket6/0.1/send_to");    x.args().add("sockid", sockid);    x.args().add("remote_addr", remote_addr);    x.args().add("remote_port", remote_port);    x.args().add("data", data);    return _sender->send(x, callback(this, &XrlSocket6V0p1Client::unmarshall_send_to, cb));}/* Unmarshall send_to */voidXrlSocket6V0p1Client::unmarshall_send_to(	const XrlError&	e,	XrlArgs*	a,	SendToCB		cb){    if (e != XrlError::OKAY()) {	cb->dispatch(e);	return;    } else if (a && a->size() != 0) {	XLOG_ERROR("Wrong number of arguments (%u != %u)", XORP_UINT_CAST(a->size()), XORP_UINT_CAST(0));	cb->dispatch(XrlError::BAD_ARGS());	return;    }    cb->dispatch(e);}boolXrlSocket6V0p1Client::send_send_to_with_flags(	const char*	dst_xrl_target_name,	const string&	sockid,	const IPv6&	remote_addr,	const uint32_t&	remote_port,	const vector<uint8_t>&	data,	const bool&	out_of_band,	const bool&	end_of_record,	const bool&	end_of_file,	const SendToWithFlagsCB&	cb){    Xrl x(dst_xrl_target_name, "socket6/0.1/send_to_with_flags");    x.args().add("sockid", sockid);    x.args().add("remote_addr", remote_addr);    x.args().add("remote_port", remote_port);    x.args().add("data", data);    x.args().add("out_of_band", out_of_band);    x.args().add("end_of_record", end_of_record);    x.args().add("end_of_file", end_of_file);    return _sender->send(x, callback(this, &XrlSocket6V0p1Client::unmarshall_send_to_with_flags, cb));}/* Unmarshall send_to_with_flags */voidXrlSocket6V0p1Client::unmarshall_send_to_with_flags(	const XrlError&	e,	XrlArgs*	a,	SendToWithFlagsCB		cb){    if (e != XrlError::OKAY()) {	cb->dispatch(e);	return;    } else if (a && a->size() != 0) {	XLOG_ERROR("Wrong number of arguments (%u != %u)", XORP_UINT_CAST(a->size()), XORP_UINT_CAST(0));	cb->dispatch(XrlError::BAD_ARGS());	return;    }    cb->dispatch(e);}boolXrlSocket6V0p1Client::send_send_from_multicast_if(	const char*	dst_xrl_target_name,	const string&	sockid,	const IPv6&	group_addr,	const uint32_t&	group_port,	const IPv6&	ifaddr,	const vector<uint8_t>&	data,	const SendFromMulticastIfCB&	cb){    Xrl x(dst_xrl_target_name, "socket6/0.1/send_from_multicast_if");    x.args().add("sockid", sockid);    x.args().add("group_addr", group_addr);    x.args().add("group_port", group_port);    x.args().add("ifaddr", ifaddr);    x.args().add("data", data);    return _sender->send(x, callback(this, &XrlSocket6V0p1Client::unmarshall_send_from_multicast_if, cb));}/* Unmarshall send_from_multicast_if */voidXrlSocket6V0p1Client::unmarshall_send_from_multicast_if(	const XrlError&	e,	XrlArgs*	a,	SendFromMulticastIfCB		cb){    if (e != XrlError::OKAY()) {	cb->dispatch(e);	return;    } else if (a && a->size() != 0) {	XLOG_ERROR("Wrong number of arguments (%u != %u)", XORP_UINT_CAST(a->size()), XORP_UINT_CAST(0));	cb->dispatch(XrlError::BAD_ARGS());	return;    }    cb->dispatch(e);}boolXrlSocket6V0p1Client::send_set_socket_option(	const char*	dst_xrl_target_name,	const string&	sockid,	const string&	optname,	const uint32_t&	optval,	const SetSocketOptionCB&	cb){    Xrl x(dst_xrl_target_name, "socket6/0.1/set_socket_option");    x.args().add("sockid", sockid);    x.args().add("optname", optname);    x.args().add("optval", optval);    return _sender->send(x, callback(this, &XrlSocket6V0p1Client::unmarshall_set_socket_option, cb));}/* Unmarshall set_socket_option */voidXrlSocket6V0p1Client::unmarshall_set_socket_option(	const XrlError&	e,	XrlArgs*	a,	SetSocketOptionCB		cb){    if (e != XrlError::OKAY()) {	cb->dispatch(e);	return;    } else if (a && a->size() != 0) {	XLOG_ERROR("Wrong number of arguments (%u != %u)", XORP_UINT_CAST(a->size()), XORP_UINT_CAST(0));	cb->dispatch(XrlError::BAD_ARGS());	return;    }    cb->dispatch(e);}boolXrlSocket6V0p1Client::send_get_socket_option(	const char*	dst_xrl_target_name,	const string&	sockid,	const string&	optname,	const GetSocketOptionCB&	cb){    Xrl x(dst_xrl_target_name, "socket6/0.1/get_socket_option");    x.args().add("sockid", sockid);    x.args().add("optname", optname);    return _sender->send(x, callback(this, &XrlSocket6V0p1Client::unmarshall_get_socket_option, cb));}/* Unmarshall get_socket_option */voidXrlSocket6V0p1Client::unmarshall_get_socket_option(	const XrlError&	e,	XrlArgs*	a,	GetSocketOptionCB		cb){    if (e != XrlError::OKAY()) {	cb->dispatch(e, 0);	return;    } else if (a && a->size() != 1) {	XLOG_ERROR("Wrong number of arguments (%u != %u)", XORP_UINT_CAST(a->size()), XORP_UINT_CAST(1));	cb->dispatch(XrlError::BAD_ARGS(), 0);	return;    }    uint32_t optval;    try {	a->get("optval", optval);    } catch (const XrlArgs::XrlAtomNotFound&) {	XLOG_ERROR("Atom not found");	cb->dispatch(XrlError::BAD_ARGS(), 0);	return;    }    cb->dispatch(e, &optval);}

⌨️ 快捷键说明

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