class XrlRawPacket4V0p1Client


 
LOGO
 Annotated List  Files  Globals  Hierarchy  Index  Top

Public Types

Public Methods

Protected Members


Detailed Description

 XrlRawPacket4V0p1Client (XrlSender* s)

XrlRawPacket4V0p1Client

 ~XrlRawPacket4V0p1Client ()

~XrlRawPacket4V0p1Client

[virtual]

typedef XorpCallback1<void, const XrlError&>::RefPtr SendCB

SendCB

bool  send_send ( const char* dst_xrl_target_name, const string& if_name, const string& vif_name, const IPv4& src_address, const IPv4& dst_address, const uint32_t& ip_protocol, const int32_t& ip_ttl, const int32_t& ip_tos, const bool& ip_router_alert, const bool& ip_internet_control, const vector<uint8_t>& payload, const SendCB& cb )

send_send

Send Xrl intended to:

Send an IPv4 packet on a raw socket.

Parameters:

dst_xrl_target_namethe Xrl target name of the destination.
if_namethe interface to send the packet on. It is essential for multicast. In the unicast case this field may be empty.
vif_namethe vif to send the packet on. It is essential for multicast. In the unicast case this field may be empty.
src_addressthe IP source address.
dst_addressthe IP destination address.
ip_protocolthe IP protocol number. It must be between 1 and 255.
ip_ttlthe IP TTL (hop-limit). If it has a negative value, the TTL will be set internally before transmission.
ip_tosthe Type Of Service (Diffserv/ECN bits for IPv4). If it has a negative value, the TOS will be set internally before transmission.
ip_router_alertif true, then add the IP Router Alert option to the IP packet.
ip_internet_controlif true, then this is IP control traffic.
payloadthe payload, everything after the IP header and options.
typedef XorpCallback1<void, const XrlError&>::RefPtr RegisterReceiverCB

RegisterReceiverCB

bool  send_register_receiver ( const char* dst_xrl_target_name, const string& xrl_target_instance_name, const string& if_name, const string& vif_name, const uint32_t& ip_protocol, const bool& enable_multicast_loopback, const RegisterReceiverCB& cb )

send_register_receiver

Send Xrl intended to:

Register to receive IPv4 packets. The receiver is expected to support raw_packet4_client/0.1 interface.

Parameters:

dst_xrl_target_namethe Xrl target name of the destination.
xrl_target_instance_namethe receiver's XRL target instance name.
if_namethe interface through which packets should be accepted.
vif_namethe vif through which packets should be accepted.
ip_protocolthe IP protocol number that the receiver is interested in. It must be between 0 and 255. A protocol number of 0 is used to specify all protocols.
enable_multicast_loopbackif true then enable delivering of multicast datagrams back to this host (assuming the host is a member of the same multicast group.
typedef XorpCallback1<void, const XrlError&>::RefPtr UnregisterReceiverCB

UnregisterReceiverCB

bool  send_unregister_receiver ( const char* dst_xrl_target_name, const string& xrl_target_instance_name, const string& if_name, const string& vif_name, const uint32_t& ip_protocol, const UnregisterReceiverCB& cb )

send_unregister_receiver

Send Xrl intended to:

Unregister to receive IPv4 packets.

Parameters:

dst_xrl_target_namethe Xrl target name of the destination.
xrl_target_instance_namethe receiver's XRL target instance name.
if_namethe interface through which packets should not be accepted.
vif_namethe vif through which packets should not be accepted.
ip_protocolthe IP Protocol number that the receiver is not interested in anymore. It must be between 0 and 255. A protocol number of 0 is used to specify all protocols.
typedef XorpCallback1<void, const XrlError&>::RefPtr JoinMulticastGroupCB

JoinMulticastGroupCB

bool  send_join_multicast_group ( const char* dst_xrl_target_name, const string& xrl_target_instance_name, const string& if_name, const string& vif_name, const uint32_t& ip_protocol, const IPv4& group_address, const JoinMulticastGroupCB& cb )

send_join_multicast_group

Send Xrl intended to:

Join an IPv4 multicast group.

Parameters:

dst_xrl_target_namethe Xrl target name of the destination.
xrl_target_instance_namethe receiver's XRL target instance name.
if_namethe interface through which packets should be accepted.
vif_namethe vif through which packets should be accepted.
ip_protocolthe IP protocol number that the receiver is interested in. It must be between 0 and 255. A protocol number of 0 is used to specify all protocols.
group_addressthe multicast group address to join.
typedef XorpCallback1<void, const XrlError&>::RefPtr LeaveMulticastGroupCB

LeaveMulticastGroupCB

bool  send_leave_multicast_group ( const char* dst_xrl_target_name, const string& xrl_target_instance_name, const string& if_name, const string& vif_name, const uint32_t& ip_protocol, const IPv4& group_address, const LeaveMulticastGroupCB& cb )

send_leave_multicast_group

Send Xrl intended to:

Leave an IPv4 multicast group.

Parameters:

dst_xrl_target_namethe Xrl target name of the destination.
xrl_target_instance_namethe receiver's XRL target instance name.
if_namethe interface through which packets should not be accepted.
vif_namethe vif through which packets should not be accepted.
ip_protocolthe IP protocol number that the receiver is not interested in anymore. It must be between 0 and 255. A protocol number of 0 is used to specify all protocols.
group_addressthe multicast group address to leave.
XrlSender* _sender

_sender

[protected]


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