| 
 
 | 
 | 
| Mld6igmpVif (Mld6igmpNode& mld6igmp_node, const Vif& vif) | Mld6igmpVif | 
Constructor for a given MLD/IGMP node and a generic virtual interface.
Parameters:
| mld6igmp_node | the Mld6igmpNode this interface belongs to. | 
| vif | the generic Vif interface that contains various information. | 
| ~Mld6igmpVif () | ~Mld6igmpVif | 
[virtual]
Destructor
| int		 set_proto_version (int proto_version) | set_proto_version | 
Set the current protocol version.
The protocol version must be in the interval [IGMP_VERSION_MIN, IGMP_VERSION_MAX] or [MLD_VERSION_MIN, MLD_VERSION_MAX]
Parameters:
| proto_version | the protocol version to set. | 
Returns: XORP_OK on success, otherwise XORP_ERROR.
Reimplemented from ProtoUnit.
| int		 start () | start | 
Start MLD/IGMP on a single virtual interface.
Returns: XORP_OK on success, otherwise XORP_ERROR.
| int		 stop () | stop | 
Stop MLD/IGMP on a single virtual interface.
Returns: XORP_OK on success, otherwise XORP_ERROR.
| int		 mld6igmp_recv (const IPvX& src, const IPvX& dst,
			      int ip_ttl, int ip_tos, bool router_alert_bool,
			      buffer_t *buffer) | mld6igmp_recv | 
Receive a protocol message.
Parameters:
| src | the source address of the message. | 
| dst | the destination address of the message. | 
| ip_ttl | the IP TTL of the message. If it has a negative value it should be ignored. | 
| ip_ttl | the IP TOS of the message. If it has a negative value, it should be ignored. | 
| router_alert_bool | if true, the IP Router Alert option in the IP packet was set (when applicable). | 
| buffer | the data buffer with the received message. | 
Returns: XORP_OK on success, otherwise XORP_ERROR.
| string	 flags_string () | flags_string | 
[const]
Get the string with the flags about the vif status.
TODO: temporary here. Should go to the Vif class after the Vif class starts using the Proto class.
Returns: the C++ style string with the flags about the vif status (e.g., UP/DOWN/DISABLED, etc).
| Mld6igmpNode&  mld6igmp_node () | mld6igmp_node | 
[const]
Get the MLD6IGMP node (Mld6igmpNode).
Returns: a reference to the MLD6IGMP node (Mld6igmpNode).
| const IPvX&	 querier_addr () | querier_addr | 
[const]
Get the MLD/IGMP querier address.
Returns: the MLD/IGMP querier address.
| void	 set_querier_addr (const IPvX& v) | set_querier_addr | 
Set the MLD/IMGPquerier address.
Parameters:
| v | the value of the MLD/IGMP querier address. | 
| const list<MemberQuery *>&  members () | members | 
[const]
Get the list with the multicast membership information (MemberQuery).
Returns: the list with the multicast membership information (MemberQuery).
| bool	 proto_is_ssm () | proto_is_ssm | 
[const]
Test if the protocol is Source-Specific Multicast (e.g., IGMPv3 or MLDv2).
Returns: true if the protocol is Source-Specific Multicast (e.g., IGMPv3 or MLDv2).
| const XorpTimer&  const_other_querier_timer () | const_other_querier_timer | 
[const]
Get the timer to timeout the (other) MLD/IGMP querier.
Returns: a reference to the timer to timeout the (other) MLD/IGMP querier.
| int  add_protocol (xorp_module_id module_id,
		     const string& module_instance_name) | add_protocol | 
Add a protocol that needs to be notified about multicast membership changes.
Add a protocol to the list of entries that would be notified if there is membership change on a particular interface.
Parameters:
| module_instance_name | the module instance name of the protocol to add. | 
| module_id | the module ID (xorp_module_id) of the protocol to add. | 
Returns: XORP_OK on success, otherwise XORP_ERROR.
| int  delete_protocol (xorp_module_id module_id,
			const string& module_instance_name) | delete_protocol | 
Delete a protocol that needs to be notified about multicast membership changes.
Delete a protocol from the list of entries that would be notified if there is membership change on a particular interface.
Parameters:
| module_instance_name | the module instance name of the protocol to delete. | 
| module_id | the module ID (xorp_module_id) of the protocol to delete. | 
Returns: XORP_OK on success, otherwise XORP_ERROR.
| Generated by: pavlin on possum.icir.org on Mon Jun 9 13:23:56 2003, using kdoc 2.0a54+XORP. |