lwIP  2.1.0
Lightweight IP stack
mld6.c File Reference
#include "lwip/opt.h"
#include "lwip/mld6.h"
#include "lwip/prot/mld6.h"
#include "lwip/icmp6.h"
#include "lwip/ip6.h"
#include "lwip/ip6_addr.h"
#include "lwip/ip.h"
#include "lwip/inet_chksum.h"
#include "lwip/pbuf.h"
#include "lwip/netif.h"
#include "lwip/memp.h"
#include "lwip/stats.h"
#include <string.h>

Functions

err_t mld6_stop (struct netif *netif)
 
void mld6_report_groups (struct netif *netif)
 
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)
 
void mld6_tmr (void)
 

Detailed Description

Multicast listener discovery

Function Documentation

◆ mld6_input()

void mld6_input ( struct pbuf p,
struct netif inp 
)

Process an input MLD message. Called by icmp6_input.

Parameters
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

Parameters
ifpthe network interface for which to look
addrthe group ipv6 address to search for
Returns
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

Parameters
netifnetwork interface on which report MLD memberships

◆ mld6_stop()

err_t mld6_stop ( struct netif netif)

Stop MLD processing on interface

Parameters
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.