Go to the documentation of this file.
39 #ifndef IGMP_HOST_SUPPORT
40 #define IGMP_HOST_SUPPORT ENABLED
41 #elif (IGMP_HOST_SUPPORT != ENABLED && IGMP_HOST_SUPPORT != DISABLED)
42 #error IGMP_HOST_SUPPORT parameter is not valid
82 #if (IPV4_MAX_MULTICAST_SOURCES > 0)
101 #if (IPV4_MAX_MULTICAST_SOURCES > 0)
Ipv4Addr addr
Source address.
IpFilterMode
Multicast filter mode.
IgmpHostGroupState state
Multicast group state.
IgmpVersion
IGMP versions.
NetInterface * interface
Underlying network interface.
void igmpHostStateChangeEvent(IgmpHostContext *context, Ipv4Addr groupAddr, IpFilterMode newFilterMode, const Ipv4SrcAddrList *newFilter)
Process multicast reception state change.
error_t igmpHostInit(NetInterface *interface)
IGMP host initialization.
#define IPV4_MAX_MULTICAST_SOURCES
IgmpHostGroupState
Multicast group states.
uint32_t Ipv4Addr
IPv4 network address.
NetTimer stateChangeReportTimer
Retransmission timer for state-change reports.
IpFilterMode filterMode
Filter mode.
@ IGMP_HOST_GROUP_STATE_DELAYING_MEMBER
void igmpHostTick(IgmpHostContext *context)
IGMP host timer handler.
Ipv4Addr addr
Multicast group address.
uint_t retransmitCount
Retransmission counter.
@ IGMP_HOST_GROUP_STATE_NON_MEMBER
uint_t numSources
Number of source address.
NetTimer generalQueryTimer
Timer for scheduling responses to general queries.
NetTimer igmpv2QuerierPresentTimer
IGMPv2 querier present timer.
bool_t flag
We are the last host to send a report for this group.
NetTimer igmpv1QuerierPresentTimer
IGMPv1 querier present timer.
NetTimer timer
Report delay timer.
@ IGMP_HOST_GROUP_STATE_INIT_MEMBER
IgmpVersion compatibilityMode
Host compatibility mode.
void igmpHostLinkChangeEvent(IgmpHostContext *context)
Process link state change.
uint_t retransmitCount
Filter mode retransmission counter.
Definitions common to IGMP host, router and snooping switch.
@ IGMP_HOST_GROUP_STATE_IDLE_MEMBER
Ipv4SrcAddrList filter
Current-state record.
#define IPV4_MULTICAST_FILTER_SIZE