xorp

XrlSocket4V0p1Client Class Reference

List of all members.

Public Types

typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
TcpOpenCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
UdpOpenCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
TcpOpenAndBindCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
UdpOpenAndBindCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
UdpOpenBindJoinCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
TcpOpenBindConnectCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
UdpOpenBindConnectCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
UdpOpenBindBroadcastCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
BindCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
UdpJoinGroupCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
UdpLeaveGroupCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
CloseCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
TcpListenCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
UdpEnableRecvCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
SendCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
SendToCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
SendFromMulticastIfCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
SetSocketOptionCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
SetSocketOptionTxtCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
TcpOpenCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
UdpOpenCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
TcpOpenAndBindCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
UdpOpenAndBindCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
UdpOpenBindJoinCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
TcpOpenBindConnectCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
UdpOpenBindConnectCB
typedef XorpCallback2< void,
const XrlError &, const string * >
::RefPtr 
UdpOpenBindBroadcastCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
BindCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
UdpJoinGroupCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
UdpLeaveGroupCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
CloseCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
TcpListenCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
UdpEnableRecvCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
SendCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
SendToCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
SendFromMulticastIfCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
SetSocketOptionCB
typedef XorpCallback1< void,
const XrlError & >::RefPtr 
SetSocketOptionTxtCB

Public Member Functions

 XrlSocket4V0p1Client (XrlSender *s)
bool send_tcp_open (const char *dst_xrl_target_name, const string &creator, const TcpOpenCB &cb)
 Send Xrl intended to:
bool send_udp_open (const char *dst_xrl_target_name, const string &creator, const UdpOpenCB &cb)
 Send Xrl intended to:
bool send_tcp_open_and_bind (const char *dst_xrl_target_name, const string &creator, const IPv4 &local_addr, const uint32_t &local_port, const TcpOpenAndBindCB &cb)
 Send Xrl intended to:
bool send_udp_open_and_bind (const char *dst_xrl_target_name, const string &creator, const IPv4 &local_addr, const uint32_t &local_port, const string &local_dev, const uint32_t &reuse, const UdpOpenAndBindCB &cb)
 Send Xrl intended to:
bool send_udp_open_bind_join (const char *dst_xrl_target_name, const string &creator, const IPv4 &local_addr, const uint32_t &local_port, const IPv4 &mcast_addr, const uint32_t &ttl, const bool &reuse, const UdpOpenBindJoinCB &cb)
 Send Xrl intended to:
bool send_tcp_open_bind_connect (const char *dst_xrl_target_name, const string &creator, const IPv4 &local_addr, const uint32_t &local_port, const IPv4 &remote_addr, const uint32_t &remote_port, const TcpOpenBindConnectCB &cb)
 Send Xrl intended to:
bool send_udp_open_bind_connect (const char *dst_xrl_target_name, const string &creator, const IPv4 &local_addr, const uint32_t &local_port, const IPv4 &remote_addr, const uint32_t &remote_port, const UdpOpenBindConnectCB &cb)
 Send Xrl intended to:
bool send_udp_open_bind_broadcast (const char *dst_xrl_target_name, const string &creator, const string &ifname, const string &vifname, const uint32_t &local_port, const uint32_t &remote_port, const bool &reuse, const bool &limited, const bool &connected, const UdpOpenBindBroadcastCB &cb)
 Send Xrl intended to:
bool send_bind (const char *dst_xrl_target_name, const string &sockid, const IPv4 &local_addr, const uint32_t &local_port, const BindCB &cb)
 Send Xrl intended to:
bool send_udp_join_group (const char *dst_xrl_target_name, const string &sockid, const IPv4 &mcast_addr, const IPv4 &join_if_addr, const UdpJoinGroupCB &cb)
 Send Xrl intended to:
bool send_udp_leave_group (const char *dst_xrl_target_name, const string &sockid, const IPv4 &mcast_addr, const IPv4 &leave_if_addr, const UdpLeaveGroupCB &cb)
 Send Xrl intended to:
bool send_close (const char *dst_xrl_target_name, const string &sockid, const CloseCB &cb)
 Send Xrl intended to:
bool send_tcp_listen (const char *dst_xrl_target_name, const string &sockid, const uint32_t &backlog, const TcpListenCB &cb)
 Send Xrl intended to:
bool send_udp_enable_recv (const char *dst_xrl_target_name, const string &sockid, const UdpEnableRecvCB &cb)
 Send Xrl intended to:
bool send_send (const char *dst_xrl_target_name, const string &sockid, const vector< uint8_t > &data, const SendCB &cb)
 Send Xrl intended to:
bool send_send_to (const char *dst_xrl_target_name, const string &sockid, const IPv4 &remote_addr, const uint32_t &remote_port, const vector< uint8_t > &data, const SendToCB &cb)
 Send Xrl intended to:
bool send_send_from_multicast_if (const char *dst_xrl_target_name, const string &sockid, const IPv4 &group_addr, const uint32_t &group_port, const IPv4 &ifaddr, const vector< uint8_t > &data, const SendFromMulticastIfCB &cb)
 Send Xrl intended to:
bool send_set_socket_option (const char *dst_xrl_target_name, const string &sockid, const string &optname, const uint32_t &optval, const SetSocketOptionCB &cb)
 Send Xrl intended to:
bool send_set_socket_option_txt (const char *dst_xrl_target_name, const string &sockid, const string &optname, const string &optval, const SetSocketOptionTxtCB &cb)
 Send Xrl intended to:
 XrlSocket4V0p1Client (XrlSender *s)
bool send_tcp_open (const char *dst_xrl_target_name, const string &creator, const TcpOpenCB &cb)
 Send Xrl intended to:
bool send_udp_open (const char *dst_xrl_target_name, const string &creator, const UdpOpenCB &cb)
 Send Xrl intended to:
bool send_tcp_open_and_bind (const char *dst_xrl_target_name, const string &creator, const IPv4 &local_addr, const uint32_t &local_port, const TcpOpenAndBindCB &cb)
 Send Xrl intended to:
bool send_udp_open_and_bind (const char *dst_xrl_target_name, const string &creator, const IPv4 &local_addr, const uint32_t &local_port, const string &local_dev, const uint32_t &reuse, const UdpOpenAndBindCB &cb)
 Send Xrl intended to:
bool send_udp_open_bind_join (const char *dst_xrl_target_name, const string &creator, const IPv4 &local_addr, const uint32_t &local_port, const IPv4 &mcast_addr, const uint32_t &ttl, const bool &reuse, const UdpOpenBindJoinCB &cb)
 Send Xrl intended to:
bool send_tcp_open_bind_connect (const char *dst_xrl_target_name, const string &creator, const IPv4 &local_addr, const uint32_t &local_port, const IPv4 &remote_addr, const uint32_t &remote_port, const TcpOpenBindConnectCB &cb)
 Send Xrl intended to:
bool send_udp_open_bind_connect (const char *dst_xrl_target_name, const string &creator, const IPv4 &local_addr, const uint32_t &local_port, const IPv4 &remote_addr, const uint32_t &remote_port, const UdpOpenBindConnectCB &cb)
 Send Xrl intended to:
bool send_udp_open_bind_broadcast (const char *dst_xrl_target_name, const string &creator, const string &ifname, const string &vifname, const uint32_t &local_port, const uint32_t &remote_port, const bool &reuse, const bool &limited, const bool &connected, const UdpOpenBindBroadcastCB &cb)
 Send Xrl intended to:
bool send_bind (const char *dst_xrl_target_name, const string &sockid, const IPv4 &local_addr, const uint32_t &local_port, const BindCB &cb)
 Send Xrl intended to:
bool send_udp_join_group (const char *dst_xrl_target_name, const string &sockid, const IPv4 &mcast_addr, const IPv4 &join_if_addr, const UdpJoinGroupCB &cb)
 Send Xrl intended to:
bool send_udp_leave_group (const char *dst_xrl_target_name, const string &sockid, const IPv4 &mcast_addr, const IPv4 &leave_if_addr, const UdpLeaveGroupCB &cb)
 Send Xrl intended to:
bool send_close (const char *dst_xrl_target_name, const string &sockid, const CloseCB &cb)
 Send Xrl intended to:
bool send_tcp_listen (const char *dst_xrl_target_name, const string &sockid, const uint32_t &backlog, const TcpListenCB &cb)
 Send Xrl intended to:
bool send_udp_enable_recv (const char *dst_xrl_target_name, const string &sockid, const UdpEnableRecvCB &cb)
 Send Xrl intended to:
bool send_send (const char *dst_xrl_target_name, const string &sockid, const vector< uint8_t > &data, const SendCB &cb)
 Send Xrl intended to:
bool send_send_to (const char *dst_xrl_target_name, const string &sockid, const IPv4 &remote_addr, const uint32_t &remote_port, const vector< uint8_t > &data, const SendToCB &cb)
 Send Xrl intended to:
bool send_send_from_multicast_if (const char *dst_xrl_target_name, const string &sockid, const IPv4 &group_addr, const uint32_t &group_port, const IPv4 &ifaddr, const vector< uint8_t > &data, const SendFromMulticastIfCB &cb)
 Send Xrl intended to:
bool send_set_socket_option (const char *dst_xrl_target_name, const string &sockid, const string &optname, const uint32_t &optval, const SetSocketOptionCB &cb)
 Send Xrl intended to:
bool send_set_socket_option_txt (const char *dst_xrl_target_name, const string &sockid, const string &optname, const string &optval, const SetSocketOptionTxtCB &cb)
 Send Xrl intended to:

Protected Attributes

XrlSender_sender

Static Private Member Functions

static void unmarshall_tcp_open (const XrlError &e, XrlArgs *a, TcpOpenCB cb)
static void unmarshall_udp_open (const XrlError &e, XrlArgs *a, UdpOpenCB cb)
static void unmarshall_tcp_open_and_bind (const XrlError &e, XrlArgs *a, TcpOpenAndBindCB cb)
static void unmarshall_udp_open_and_bind (const XrlError &e, XrlArgs *a, UdpOpenAndBindCB cb)
static void unmarshall_udp_open_bind_join (const XrlError &e, XrlArgs *a, UdpOpenBindJoinCB cb)
static void unmarshall_tcp_open_bind_connect (const XrlError &e, XrlArgs *a, TcpOpenBindConnectCB cb)
static void unmarshall_udp_open_bind_connect (const XrlError &e, XrlArgs *a, UdpOpenBindConnectCB cb)
static void unmarshall_udp_open_bind_broadcast (const XrlError &e, XrlArgs *a, UdpOpenBindBroadcastCB cb)
static void unmarshall_bind (const XrlError &e, XrlArgs *a, BindCB cb)
static void unmarshall_udp_join_group (const XrlError &e, XrlArgs *a, UdpJoinGroupCB cb)
static void unmarshall_udp_leave_group (const XrlError &e, XrlArgs *a, UdpLeaveGroupCB cb)
static void unmarshall_close (const XrlError &e, XrlArgs *a, CloseCB cb)
static void unmarshall_tcp_listen (const XrlError &e, XrlArgs *a, TcpListenCB cb)
static void unmarshall_udp_enable_recv (const XrlError &e, XrlArgs *a, UdpEnableRecvCB cb)
static void unmarshall_send (const XrlError &e, XrlArgs *a, SendCB cb)
static void unmarshall_send_to (const XrlError &e, XrlArgs *a, SendToCB cb)
static void unmarshall_send_from_multicast_if (const XrlError &e, XrlArgs *a, SendFromMulticastIfCB cb)
static void unmarshall_set_socket_option (const XrlError &e, XrlArgs *a, SetSocketOptionCB cb)
static void unmarshall_set_socket_option_txt (const XrlError &e, XrlArgs *a, SetSocketOptionTxtCB cb)
static void unmarshall_tcp_open (const XrlError &e, XrlArgs *a, TcpOpenCB cb)
static void unmarshall_udp_open (const XrlError &e, XrlArgs *a, UdpOpenCB cb)
static void unmarshall_tcp_open_and_bind (const XrlError &e, XrlArgs *a, TcpOpenAndBindCB cb)
static void unmarshall_udp_open_and_bind (const XrlError &e, XrlArgs *a, UdpOpenAndBindCB cb)
static void unmarshall_udp_open_bind_join (const XrlError &e, XrlArgs *a, UdpOpenBindJoinCB cb)
static void unmarshall_tcp_open_bind_connect (const XrlError &e, XrlArgs *a, TcpOpenBindConnectCB cb)
static void unmarshall_udp_open_bind_connect (const XrlError &e, XrlArgs *a, UdpOpenBindConnectCB cb)
static void unmarshall_udp_open_bind_broadcast (const XrlError &e, XrlArgs *a, UdpOpenBindBroadcastCB cb)
static void unmarshall_bind (const XrlError &e, XrlArgs *a, BindCB cb)
static void unmarshall_udp_join_group (const XrlError &e, XrlArgs *a, UdpJoinGroupCB cb)
static void unmarshall_udp_leave_group (const XrlError &e, XrlArgs *a, UdpLeaveGroupCB cb)
static void unmarshall_close (const XrlError &e, XrlArgs *a, CloseCB cb)
static void unmarshall_tcp_listen (const XrlError &e, XrlArgs *a, TcpListenCB cb)
static void unmarshall_udp_enable_recv (const XrlError &e, XrlArgs *a, UdpEnableRecvCB cb)
static void unmarshall_send (const XrlError &e, XrlArgs *a, SendCB cb)
static void unmarshall_send_to (const XrlError &e, XrlArgs *a, SendToCB cb)
static void unmarshall_send_from_multicast_if (const XrlError &e, XrlArgs *a, SendFromMulticastIfCB cb)
static void unmarshall_set_socket_option (const XrlError &e, XrlArgs *a, SetSocketOptionCB cb)
static void unmarshall_set_socket_option_txt (const XrlError &e, XrlArgs *a, SetSocketOptionTxtCB cb)

Private Attributes

auto_ptr< Xrlap_xrl_tcp_open
auto_ptr< Xrlap_xrl_udp_open
auto_ptr< Xrlap_xrl_tcp_open_and_bind
auto_ptr< Xrlap_xrl_udp_open_and_bind
auto_ptr< Xrlap_xrl_udp_open_bind_join
auto_ptr< Xrlap_xrl_tcp_open_bind_connect
auto_ptr< Xrlap_xrl_udp_open_bind_connect
auto_ptr< Xrlap_xrl_udp_open_bind_broadcast
auto_ptr< Xrlap_xrl_bind
auto_ptr< Xrlap_xrl_udp_join_group
auto_ptr< Xrlap_xrl_udp_leave_group
auto_ptr< Xrlap_xrl_close
auto_ptr< Xrlap_xrl_tcp_listen
auto_ptr< Xrlap_xrl_udp_enable_recv
auto_ptr< Xrlap_xrl_send
auto_ptr< Xrlap_xrl_send_to
auto_ptr< Xrlap_xrl_send_from_multicast_if
auto_ptr< Xrlap_xrl_set_socket_option
auto_ptr< Xrlap_xrl_set_socket_option_txt

Member Function Documentation

bool XrlSocket4V0p1Client::send_bind ( const char *  dst_xrl_target_name,
const string &  sockid,
const IPv4 local_addr,
const uint32_t &  local_port,
const BindCB &  cb 
)

Send Xrl intended to:

Bind a socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidthe socket ID of the socket to bind.
local_addrthe interface address to bind socket to.
local_portthe port to bind socket to.
bool XrlSocket4V0p1Client::send_bind ( const char *  dst_xrl_target_name,
const string &  sockid,
const IPv4 local_addr,
const uint32_t &  local_port,
const BindCB &  cb 
)

Send Xrl intended to:

Bind a socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidthe socket ID of the socket to bind.
local_addrthe interface address to bind socket to.
local_portthe port to bind socket to.
bool XrlSocket4V0p1Client::send_close ( const char *  dst_xrl_target_name,
const string &  sockid,
const CloseCB &  cb 
)

Send Xrl intended to:

Close socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID of socket to be closed.
bool XrlSocket4V0p1Client::send_close ( const char *  dst_xrl_target_name,
const string &  sockid,
const CloseCB &  cb 
)

Send Xrl intended to:

Close socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID of socket to be closed.
bool XrlSocket4V0p1Client::send_send ( const char *  dst_xrl_target_name,
const string &  sockid,
const vector< uint8_t > &  data,
const SendCB &  cb 
)

Send Xrl intended to:

Send data on socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
datablock of data to be sent.
bool XrlSocket4V0p1Client::send_send ( const char *  dst_xrl_target_name,
const string &  sockid,
const vector< uint8_t > &  data,
const SendCB &  cb 
)

Send Xrl intended to:

Send data on socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
datablock of data to be sent.
bool XrlSocket4V0p1Client::send_send_from_multicast_if ( const char *  dst_xrl_target_name,
const string &  sockid,
const IPv4 group_addr,
const uint32_t &  group_port,
const IPv4 ifaddr,
const vector< uint8_t > &  data,
const SendFromMulticastIfCB &  cb 
)

Send Xrl intended to:

Send data on socket to a given multicast group from a given interface.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
group_addrdestination address for data.
group_portdestination port for data.
ifaddrinterface address
bool XrlSocket4V0p1Client::send_send_from_multicast_if ( const char *  dst_xrl_target_name,
const string &  sockid,
const IPv4 group_addr,
const uint32_t &  group_port,
const IPv4 ifaddr,
const vector< uint8_t > &  data,
const SendFromMulticastIfCB &  cb 
)

Send Xrl intended to:

Send data on socket to a given multicast group from a given interface.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
group_addrdestination address for data.
group_portdestination port for data.
ifaddrinterface address
bool XrlSocket4V0p1Client::send_send_to ( const char *  dst_xrl_target_name,
const string &  sockid,
const IPv4 remote_addr,
const uint32_t &  remote_port,
const vector< uint8_t > &  data,
const SendToCB &  cb 
)

Send Xrl intended to:

Send data on socket to a given destination. The packet is not routed as the forwarding engine sending the packet may not have access to the full routing table.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
remote_addrdestination address for data.
remote_portdestination port for data.
datablock of data to be sent.
bool XrlSocket4V0p1Client::send_send_to ( const char *  dst_xrl_target_name,
const string &  sockid,
const IPv4 remote_addr,
const uint32_t &  remote_port,
const vector< uint8_t > &  data,
const SendToCB &  cb 
)

Send Xrl intended to:

Send data on socket to a given destination. The packet is not routed as the forwarding engine sending the packet may not have access to the full routing table.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
remote_addrdestination address for data.
remote_portdestination port for data.
datablock of data to be sent.
bool XrlSocket4V0p1Client::send_set_socket_option ( const char *  dst_xrl_target_name,
const string &  sockid,
const string &  optname,
const uint32_t &  optval,
const SetSocketOptionCB &  cb 
)

Send Xrl intended to:

Set a named socket option with an integer value. XXX: The "onesbcast" and "reuseport" options exist to work around an architectural issue in the BSD IPv4 stack. They SHOULD NOT be used for new code.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
optnamename of option to be set. Valid values are: "onesbcast" "receive_broadcast" "reuseport" "send_broadcast" "tos" "ttl" "multicast_loopback" "multicast_ttl"
optvalinteger value of option to be set. If value is logically boolean, then zero represents 'false', and any non-zero value represents 'true'.
bool XrlSocket4V0p1Client::send_set_socket_option ( const char *  dst_xrl_target_name,
const string &  sockid,
const string &  optname,
const uint32_t &  optval,
const SetSocketOptionCB &  cb 
)

Send Xrl intended to:

Set a named socket option with an integer value. XXX: The "onesbcast" and "reuseport" options exist to work around an architectural issue in the BSD IPv4 stack. They SHOULD NOT be used for new code.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
optnamename of option to be set. Valid values are: "onesbcast" "receive_broadcast" "reuseport" "send_broadcast" "tos" "ttl" "multicast_loopback" "multicast_ttl"
optvalinteger value of option to be set. If value is logically boolean, then zero represents 'false', and any non-zero value represents 'true'.
bool XrlSocket4V0p1Client::send_set_socket_option_txt ( const char *  dst_xrl_target_name,
const string &  sockid,
const string &  optname,
const string &  optval,
const SetSocketOptionTxtCB &  cb 
)

Send Xrl intended to:

Set a named socket option with a string value. XXX: The "bindtodevice" option exists to workaround an architectural issue in the Linux IPv4 stack. It SHOULD NOT be used for new code.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
optnamename of option to be set. Valid values are: "bindtodevice"
optvalvalue of option to be set.
bool XrlSocket4V0p1Client::send_set_socket_option_txt ( const char *  dst_xrl_target_name,
const string &  sockid,
const string &  optname,
const string &  optval,
const SetSocketOptionTxtCB &  cb 
)

Send Xrl intended to:

Set a named socket option with a string value. XXX: The "bindtodevice" option exists to workaround an architectural issue in the Linux IPv4 stack. It SHOULD NOT be used for new code.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
optnamename of option to be set. Valid values are: "bindtodevice"
optvalvalue of option to be set.
bool XrlSocket4V0p1Client::send_tcp_listen ( const char *  dst_xrl_target_name,
const string &  sockid,
const uint32_t &  backlog,
const TcpListenCB &  cb 
)

Send Xrl intended to:

Listen for inbound connections on socket. When a connection request received the socket creator will receive notification through socket4_user/0.1/inbound_connect_event.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidthe unique socket ID of the socket to perform listen.
backlogthe maximum number of pending connections.
bool XrlSocket4V0p1Client::send_tcp_listen ( const char *  dst_xrl_target_name,
const string &  sockid,
const uint32_t &  backlog,
const TcpListenCB &  cb 
)

Send Xrl intended to:

Listen for inbound connections on socket. When a connection request received the socket creator will receive notification through socket4_user/0.1/inbound_connect_event.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidthe unique socket ID of the socket to perform listen.
backlogthe maximum number of pending connections.
bool XrlSocket4V0p1Client::send_tcp_open ( const char *  dst_xrl_target_name,
const string &  creator,
const TcpOpenCB &  cb 
)

Send Xrl intended to:

Open a TCP socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
bool XrlSocket4V0p1Client::send_tcp_open ( const char *  dst_xrl_target_name,
const string &  creator,
const TcpOpenCB &  cb 
)

Send Xrl intended to:

Open a TCP socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
bool XrlSocket4V0p1Client::send_tcp_open_and_bind ( const char *  dst_xrl_target_name,
const string &  creator,
const IPv4 local_addr,
const uint32_t &  local_port,
const TcpOpenAndBindCB &  cb 
)

Send Xrl intended to:

Create a bound TCP socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
local_addrthe interface address to bind socket to.
local_portthe port to bind socket to.
bool XrlSocket4V0p1Client::send_tcp_open_and_bind ( const char *  dst_xrl_target_name,
const string &  creator,
const IPv4 local_addr,
const uint32_t &  local_port,
const TcpOpenAndBindCB &  cb 
)

Send Xrl intended to:

Create a bound TCP socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
local_addrthe interface address to bind socket to.
local_portthe port to bind socket to.
bool XrlSocket4V0p1Client::send_tcp_open_bind_connect ( const char *  dst_xrl_target_name,
const string &  creator,
const IPv4 local_addr,
const uint32_t &  local_port,
const IPv4 remote_addr,
const uint32_t &  remote_port,
const TcpOpenBindConnectCB &  cb 
)

Send Xrl intended to:

Create a bound and connected TCP socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
local_addrthe interface address to bind socket to.
local_portthe port to bind socket to.
remote_addrthe address to connect to.
remote_portthe remote port to connect to.
bool XrlSocket4V0p1Client::send_tcp_open_bind_connect ( const char *  dst_xrl_target_name,
const string &  creator,
const IPv4 local_addr,
const uint32_t &  local_port,
const IPv4 remote_addr,
const uint32_t &  remote_port,
const TcpOpenBindConnectCB &  cb 
)

Send Xrl intended to:

Create a bound and connected TCP socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
local_addrthe interface address to bind socket to.
local_portthe port to bind socket to.
remote_addrthe address to connect to.
remote_portthe remote port to connect to.
bool XrlSocket4V0p1Client::send_udp_enable_recv ( const char *  dst_xrl_target_name,
const string &  sockid,
const UdpEnableRecvCB &  cb 
)

Send Xrl intended to:

Enable a UDP socket for datagram reception. If a UDP socket has been created without using the usual convenience XRLs, it is necessary to hook up its FEA internal input path by calling this XRL. It is similar in intent to tcp_listen, but named differently as it never uses the listen() socket API.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidthe unique socket ID of the socket to enable for datagram reception.
bool XrlSocket4V0p1Client::send_udp_enable_recv ( const char *  dst_xrl_target_name,
const string &  sockid,
const UdpEnableRecvCB &  cb 
)

Send Xrl intended to:

Enable a UDP socket for datagram reception. If a UDP socket has been created without using the usual convenience XRLs, it is necessary to hook up its FEA internal input path by calling this XRL. It is similar in intent to tcp_listen, but named differently as it never uses the listen() socket API.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidthe unique socket ID of the socket to enable for datagram reception.
bool XrlSocket4V0p1Client::send_udp_join_group ( const char *  dst_xrl_target_name,
const string &  sockid,
const IPv4 mcast_addr,
const IPv4 join_if_addr,
const UdpJoinGroupCB &  cb 
)

Send Xrl intended to:

Join multicast group on already bound socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
mcast_addrgroup to join.
join_if_addrinterface address to perform join on.
bool XrlSocket4V0p1Client::send_udp_join_group ( const char *  dst_xrl_target_name,
const string &  sockid,
const IPv4 mcast_addr,
const IPv4 join_if_addr,
const UdpJoinGroupCB &  cb 
)

Send Xrl intended to:

Join multicast group on already bound socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
mcast_addrgroup to join.
join_if_addrinterface address to perform join on.
bool XrlSocket4V0p1Client::send_udp_leave_group ( const char *  dst_xrl_target_name,
const string &  sockid,
const IPv4 mcast_addr,
const IPv4 leave_if_addr,
const UdpLeaveGroupCB &  cb 
)

Send Xrl intended to:

Leave multicast group on already bound socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
mcast_addrgroup to leave.
leave_if_addrinterface address to perform leave on.
bool XrlSocket4V0p1Client::send_udp_leave_group ( const char *  dst_xrl_target_name,
const string &  sockid,
const IPv4 mcast_addr,
const IPv4 leave_if_addr,
const UdpLeaveGroupCB &  cb 
)

Send Xrl intended to:

Leave multicast group on already bound socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
sockidunique socket ID.
mcast_addrgroup to leave.
leave_if_addrinterface address to perform leave on.
bool XrlSocket4V0p1Client::send_udp_open ( const char *  dst_xrl_target_name,
const string &  creator,
const UdpOpenCB &  cb 
)

Send Xrl intended to:

Open an UDP socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
bool XrlSocket4V0p1Client::send_udp_open ( const char *  dst_xrl_target_name,
const string &  creator,
const UdpOpenCB &  cb 
)

Send Xrl intended to:

Open an UDP socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
bool XrlSocket4V0p1Client::send_udp_open_and_bind ( const char *  dst_xrl_target_name,
const string &  creator,
const IPv4 local_addr,
const uint32_t &  local_port,
const string &  local_dev,
const uint32_t &  reuse,
const UdpOpenAndBindCB &  cb 
)

Send Xrl intended to:

Create a bound UDP socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
local_addrthe interface address to bind socket to.
local_portthe port to bind socket to.
bool XrlSocket4V0p1Client::send_udp_open_and_bind ( const char *  dst_xrl_target_name,
const string &  creator,
const IPv4 local_addr,
const uint32_t &  local_port,
const string &  local_dev,
const uint32_t &  reuse,
const UdpOpenAndBindCB &  cb 
)

Send Xrl intended to:

Create a bound UDP socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
local_addrthe interface address to bind socket to.
local_portthe port to bind socket to.
bool XrlSocket4V0p1Client::send_udp_open_bind_broadcast ( const char *  dst_xrl_target_name,
const string &  creator,
const string &  ifname,
const string &  vifname,
const uint32_t &  local_port,
const uint32_t &  remote_port,
const bool &  reuse,
const bool &  limited,
const bool &  connected,
const UdpOpenBindBroadcastCB &  cb 
)

Send Xrl intended to:

Create a bound, and optionally connected, UDP broadcast socket. This socket may be used for sending and receiving IPv4 broadcasts on a named if/vif. The TTL is always set to 1 on creation. The creator must specify if this socket is to be used for limited broadcasts (255.255.255.255) as this is a special case on many platforms.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
ifnamethe interface name to bind socket to.
vifnamethe vif to bind socket to.
local_portthe port to bind socket to.
remote_portthe remote port to connect to.
reuseallow other sockets to bind to same port.
limitedset the socket up for transmission to the limited broadcast address 255.255.255.255.
connectedconnect the socket for use with send() not sendto().
bool XrlSocket4V0p1Client::send_udp_open_bind_broadcast ( const char *  dst_xrl_target_name,
const string &  creator,
const string &  ifname,
const string &  vifname,
const uint32_t &  local_port,
const uint32_t &  remote_port,
const bool &  reuse,
const bool &  limited,
const bool &  connected,
const UdpOpenBindBroadcastCB &  cb 
)

Send Xrl intended to:

Create a bound, and optionally connected, UDP broadcast socket. This socket may be used for sending and receiving IPv4 broadcasts on a named if/vif. The TTL is always set to 1 on creation. The creator must specify if this socket is to be used for limited broadcasts (255.255.255.255) as this is a special case on many platforms.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
ifnamethe interface name to bind socket to.
vifnamethe vif to bind socket to.
local_portthe port to bind socket to.
remote_portthe remote port to connect to.
reuseallow other sockets to bind to same port.
limitedset the socket up for transmission to the limited broadcast address 255.255.255.255.
connectedconnect the socket for use with send() not sendto().
bool XrlSocket4V0p1Client::send_udp_open_bind_connect ( const char *  dst_xrl_target_name,
const string &  creator,
const IPv4 local_addr,
const uint32_t &  local_port,
const IPv4 remote_addr,
const uint32_t &  remote_port,
const UdpOpenBindConnectCB &  cb 
)

Send Xrl intended to:

Create a bound and connected UDP socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
local_addrthe interface address to bind socket to.
local_portthe port to bind socket to.
remote_addrthe address to connect to.
remote_portthe remote port to connect to.
bool XrlSocket4V0p1Client::send_udp_open_bind_connect ( const char *  dst_xrl_target_name,
const string &  creator,
const IPv4 local_addr,
const uint32_t &  local_port,
const IPv4 remote_addr,
const uint32_t &  remote_port,
const UdpOpenBindConnectCB &  cb 
)

Send Xrl intended to:

Create a bound and connected UDP socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
local_addrthe interface address to bind socket to.
local_portthe port to bind socket to.
remote_addrthe address to connect to.
remote_portthe remote port to connect to.
bool XrlSocket4V0p1Client::send_udp_open_bind_join ( const char *  dst_xrl_target_name,
const string &  creator,
const IPv4 local_addr,
const uint32_t &  local_port,
const IPv4 mcast_addr,
const uint32_t &  ttl,
const bool &  reuse,
const UdpOpenBindJoinCB &  cb 
)

Send Xrl intended to:

Create a bound UDP multicast socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
local_addrthe interface address to bind socket to.
local_portthe port to bind socket to.
mcast_addrthe multicast group address to join.
ttlthe TTL to use for this multicast socket.
reuseallow other sockets to bind to same multicast group.
bool XrlSocket4V0p1Client::send_udp_open_bind_join ( const char *  dst_xrl_target_name,
const string &  creator,
const IPv4 local_addr,
const uint32_t &  local_port,
const IPv4 mcast_addr,
const uint32_t &  ttl,
const bool &  reuse,
const UdpOpenBindJoinCB &  cb 
)

Send Xrl intended to:

Create a bound UDP multicast socket.

Parameters:
dst_xrl_target_namethe Xrl target name of the destination.
creatorthe Xrl Target instance name of the socket creator. The named target must implement socket4_user/0.1.
local_addrthe interface address to bind socket to.
local_portthe port to bind socket to.
mcast_addrthe multicast group address to join.
ttlthe TTL to use for this multicast socket.
reuseallow other sockets to bind to same multicast group.

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations