lwIP  2.0.2
Lightweight IP stack
mld6.h File Reference
#include "lwip/opt.h"
#include "lwip/pbuf.h"
#include "lwip/netif.h"

Data Structures

struct  mld_group


#define netif_mld6_data(netif)   ((struct mld_group *)netif_get_client_data(netif, LWIP_NETIF_CLIENT_DATA_INDEX_MLD6))


err_t mld6_stop (struct netif *netif)
void mld6_report_groups (struct netif *netif)
void mld6_tmr (void)
struct mld_groupmld6_lookfor_group (struct netif *ifp, const ip6_addr_t *addr)
void mld6_input (struct pbuf *p, struct netif *inp)
err_t mld6_joingroup (const ip6_addr_t *srcaddr, const ip6_addr_t *groupaddr)
err_t mld6_joingroup_netif (struct netif *netif, const ip6_addr_t *groupaddr)
err_t mld6_leavegroup (const ip6_addr_t *srcaddr, const ip6_addr_t *groupaddr)
err_t mld6_leavegroup_netif (struct netif *netif, const ip6_addr_t *groupaddr)

Detailed Description

Multicast listener discovery for IPv6. Aims to be compliant with RFC 2710. No support for MLDv2.

Function Documentation

◆ mld6_input()

void mld6_input ( struct pbuf p,
struct netif inp 

Process an input MLD message. Called by icmp6_input.

pthe mld packet, p->payload pointing to the icmpv6 header
inpthe netif on which this packet was received

◆ mld6_lookfor_group()

struct mld_group* mld6_lookfor_group ( struct netif ifp,
const ip6_addr_t addr 

Search for a group that is joined on a netif

ifpthe network interface for which to look
addrthe group ipv6 address to search for
a struct mld_group* if the group has been found, NULL if the group wasn't found.

◆ mld6_report_groups()

void mld6_report_groups ( struct netif netif)

Report MLD memberships for this interface

netifnetwork interface on which report MLD memberships

◆ mld6_stop()

err_t mld6_stop ( struct netif netif)

Stop MLD processing on interface

netifnetwork interface on which stop MLD processing

◆ mld6_tmr()

void mld6_tmr ( void  )

Periodic timer for mld processing. Must be called every MLD6_TMR_INTERVAL milliseconds (100).

When a delaying member expires, a membership report is sent.