MCProxy

mld_sender Class Reference
[Sender]

Generates MLD messages.

#include "mld_sender.hpp"

List of all members.

Public Member Functions

bool init (int addr_family, int version)
 mld_sender ()
bool send_general_query (int if_index)
bool send_group_specific_query (int if_index, const addr_storage &g_addr)
bool send_leave (int if_index, const addr_storage &g_addr)
bool send_report (int if_index, const addr_storage &g_addr)

Constructor & Destructor Documentation

mld_sender::mld_sender (  ) 

Create an mld_sender.

References HC_LOG_TRACE.


Member Function Documentation

bool mld_sender::init ( int  addr_family,
int  version 
) [virtual]

initialise the sender

Parameters:
addr_family used IP version (AF_INET or AF_INET6)
version used group membership version
Returns:
Return true on success.

Reimplemented from sender.

References HC_LOG_TRACE, sender::init(), sender::m_sock, and mroute_socket::set_default_icmp6_checksum_calc().

bool mld_sender::send_general_query ( int  if_index  )  [virtual]

Send a General Query to a specific interface.

Parameters:
if_index used interface
Returns:
Return true on success.

Implements sender.

References HC_LOG_TRACE, IPV6_ALL_NODES_ADDR, sender::m_sock, and mc_socket::send_packet().

bool mld_sender::send_group_specific_query ( int  if_index,
const addr_storage g_addr 
) [virtual]

Send a Group Specific Query to a multicast group and a specific interface.

Parameters:
if_index used interface
g_addr used multicast group
Returns:
Return true on success.

Implements sender.

References HC_LOG_TRACE, sender::m_sock, mc_socket::send_packet(), and addr_storage::to_string().

bool mld_sender::send_leave ( int  if_index,
const addr_storage g_addr 
) [virtual]

Send a leave Message to a multicast group and a specific interface.

Parameters:
if_index used interface
g_addr used multicast group
Returns:
Return true on success.

Implements sender.

References HC_LOG_TRACE, mc_socket::leave_group(), sender::m_sock, and addr_storage::to_string().

bool mld_sender::send_report ( int  if_index,
const addr_storage g_addr 
) [virtual]

Send a Membership Report to a multicast group and a specific interface.

Parameters:
if_index used interface
g_addr used multicast group
Returns:
Return true on success.

Implements sender.

References HC_LOG_TRACE, mc_socket::join_group(), sender::m_sock, and addr_storage::to_string().