class XrlSocket4V0p1Client


 
LOGO
 Annotated List  Files  Globals  Hierarchy  Index  Top

Public Types

Public Methods

Protected Members


Detailed Description

 XrlSocket4V0p1Client (XrlSender* s)

XrlSocket4V0p1Client

 ~XrlSocket4V0p1Client ()

~XrlSocket4V0p1Client

[virtual]

typedef XorpCallback2<void, const XrlError&, const string*>::RefPtr TcpOpenCB

TcpOpenCB

bool  send_tcp_open ( const char* dst_xrl_target_name, const string& creator, const TcpOpenCB& cb )

send_tcp_open

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.
typedef XorpCallback2<void, const XrlError&, const string*>::RefPtr UdpOpenCB

UdpOpenCB

bool  send_udp_open ( const char* dst_xrl_target_name, const string& creator, const UdpOpenCB& cb )

send_udp_open

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.
typedef XorpCallback2<void, const XrlError&, const string*>::RefPtr TcpOpenAndBindCB

TcpOpenAndBindCB

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_tcp_open_and_bind

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.
typedef XorpCallback2<void, const XrlError&, const string*>::RefPtr UdpOpenAndBindCB

UdpOpenAndBindCB

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 UdpOpenAndBindCB& cb )

send_udp_open_and_bind

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.
typedef XorpCallback2<void, const XrlError&, const string*>::RefPtr UdpOpenBindJoinCB

UdpOpenBindJoinCB

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_udp_open_bind_join

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.
typedef XorpCallback2<void, const XrlError&, const string*>::RefPtr TcpOpenBindConnectCB

TcpOpenBindConnectCB

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_tcp_open_bind_connect

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.
typedef XorpCallback2<void, const XrlError&, const string*>::RefPtr UdpOpenBindConnectCB

UdpOpenBindConnectCB

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_udp_open_bind_connect

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.
typedef XorpCallback2<void, const XrlError&, const string*>::RefPtr UdpOpenBindBroadcastCB

UdpOpenBindBroadcastCB

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_udp_open_bind_broadcast

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().
typedef XorpCallback1<void, const XrlError&>::RefPtr BindCB

BindCB

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_bind

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.
typedef XorpCallback1<void, const XrlError&>::RefPtr UdpJoinGroupCB

UdpJoinGroupCB

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_udp_join_group

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.
typedef XorpCallback1<void, const XrlError&>::RefPtr UdpLeaveGroupCB

UdpLeaveGroupCB

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_udp_leave_group

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.
typedef XorpCallback1<void, const XrlError&>::RefPtr CloseCB

CloseCB

bool  send_close ( const char* dst_xrl_target_name, const string& sockid, const CloseCB& cb )

send_close

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.
typedef XorpCallback1<void, const XrlError&>::RefPtr TcpListenCB

TcpListenCB

bool  send_tcp_listen ( const char* dst_xrl_target_name, const string& sockid, const uint32_t& backlog, const TcpListenCB& cb )

send_tcp_listen

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.
typedef XorpCallback1<void, const XrlError&>::RefPtr UdpEnableRecvCB

UdpEnableRecvCB

bool  send_udp_enable_recv ( const char* dst_xrl_target_name, const string& sockid, const UdpEnableRecvCB& cb )

send_udp_enable_recv

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.
typedef XorpCallback1<void, const XrlError&>::RefPtr SendCB

SendCB

bool  send_send ( const char* dst_xrl_target_name, const string& sockid, const vector<uint8_t>& data, const SendCB& cb )

send_send

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.
typedef XorpCallback1<void, const XrlError&>::RefPtr SendToCB

SendToCB

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_send_to

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.
typedef XorpCallback1<void, const XrlError&>::RefPtr SendFromMulticastIfCB

SendFromMulticastIfCB

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_send_from_multicast_if

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
typedef XorpCallback1<void, const XrlError&>::RefPtr SetSocketOptionCB

SetSocketOptionCB

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_set_socket_option

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'.
typedef XorpCallback1<void, const XrlError&>::RefPtr SetSocketOptionTxtCB

SetSocketOptionTxtCB

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_set_socket_option_txt

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.
XrlSender* _sender

_sender

[protected]


Generated by: pavlin on kobe.xorp.net on Wed Jan 7 19:10:48 2009, using kdoc 2.0a54+XORP.