class XrlRawPacket6V0p1Client


 
LOGO
 Annotated List  Files  Globals  Hierarchy  Index  Top

Public Types

Public Methods

Protected Members


Detailed Description

 XrlRawPacket6V0p1Client (XrlSender* s)

XrlRawPacket6V0p1Client

 ~XrlRawPacket6V0p1Client ()

~XrlRawPacket6V0p1Client

[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 IPv6& src_address, const IPv6& dst_address, const uint32_t& ip_protocol, const int32_t& ip_ttl, const int32_t& ip_tos, const bool& ip_router_alert, const XrlAtomList& ext_headers_type, const XrlAtomList& ext_headers_payload, const vector<uint8_t>& payload, const SendCB& cb )

send_send

Send Xrl intended to:

Send an IPv6 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 (IP traffic class for IPv6). 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.
ext_headers_typea list of u32 integers with the types of the optional extention headers.
ext_headers_payloada list of payload data, one for each optional extention header. The number of entries must match ext_headers_type.
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_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 IPv6 packets. The receiver is expected to support raw_packet6_client/0.1 interface.

Parameters:

dst_xrl_target_namethe Xrl target name of the destination.
xrl_target_namethe receiver's XRL target 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_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 IPv6 packets.

Parameters:

dst_xrl_target_namethe Xrl target name of the destination.
xrl_target_namethe receiver's XRL target 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_name, const string& if_name, const string& vif_name, const uint32_t& ip_protocol, const IPv6& group_address, const JoinMulticastGroupCB& cb )

send_join_multicast_group

Send Xrl intended to:

Join an IPv6 multicast group.

Parameters:

dst_xrl_target_namethe Xrl target name of the destination.
xrl_target_namethe receiver's XRL target 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_name, const string& if_name, const string& vif_name, const uint32_t& ip_protocol, const IPv6& group_address, const LeaveMulticastGroupCB& cb )

send_leave_multicast_group

Send Xrl intended to:

Leave an IPv6 multicast group.

Parameters:

dst_xrl_target_namethe Xrl target name of the destination.
xrl_target_namethe receiver's XRL target 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 possum.icir.org on Wed Mar 21 11:22:57 2007, using kdoc $.