mikroSDK Reference Manual
igmp_host.h
Go to the documentation of this file.
1
31#ifndef _IGMP_HOST_H
32#define _IGMP_HOST_H
33
34//Dependencies
35#include "core/net.h"
36#include "igmp/igmp_common.h"
37
38//IGMP host support
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
43#endif
44
45//C++ guard
46#ifdef __cplusplus
47extern "C" {
48#endif
49
50
55typedef enum
56{
57 IGMP_HOST_GROUP_STATE_NON_MEMBER = 0,
58 IGMP_HOST_GROUP_STATE_DELAYING_MEMBER = 1,
59 IGMP_HOST_GROUP_STATE_IDLE_MEMBER = 2
61
62
72
73
74//IGMP host related functions
75error_t igmpHostInit(NetInterface *interface);
76error_t igmpHostJoinGroup(NetInterface *interface, Ipv4FilterEntry *entry);
77error_t igmpHostLeaveGroup(NetInterface *interface, Ipv4FilterEntry *entry);
78
79void igmpHostTick(NetInterface *interface);
80void igmpHostLinkChangeEvent(NetInterface *interface);
81
82//C++ guard
83#ifdef __cplusplus
84}
85#endif
86
87#endif
error_t
Error codes.
Definition error.h:43
Definitions common to IGMP host, router and snooping switch.
IgmpHostGroupState
Multicast group states.
Definition igmp_host.h:56
TCP/IP stack core.
IGMP host context.
Definition igmp_host.h:68
NetTimer timer
IGMPv1 router present timer.
Definition igmp_host.h:70
bool_t igmpv1RouterPresent
An IGMPv1 query has been recently heard.
Definition igmp_host.h:69
IPv4 multicast filter entry.
Definition ipv4.h:353
Timer.
Definition net_misc.h:171