ipv6_multicast.h
IPv6 (Internet Protocol Version 6)
void ipv6DeriveInterfaceState(Ipv6FilterEntry *entry, SocketMulticastGroup *group)
Derive the per-interface state from the per-socket state.
Definition: ipv6_multicast.c:383
void ipv6RemoveSrcAddr(Ipv6SrcAddrList *list, const Ipv6Addr *srcAddr)
Remove a source address from a given list.
Definition: ipv6_multicast.c:739
error_t ipv6AcceptMulticastAddr(NetInterface *interface, const Ipv6Addr *groupAddr)
Reconfigure the MAC layer to accept multicast traffic.
Definition: ipv6_multicast.c:484
error_t ipv6JoinMulticastGroup(NetInterface *interface, const Ipv6Addr *groupAddr)
Join an IPv6 multicast group.
Definition: ipv6_multicast.c:127
int_t ipv6FindSrcAddr(const Ipv6SrcAddrList *list, const Ipv6Addr *srcAddr)
Search the list of sources for a given IP address.
Definition: ipv6_multicast.c:776
error_t ipv6MulticastFilter(NetInterface *interface, const Ipv6Addr *destAddr, const Ipv6Addr *srcAddr)
Filter out incoming multicast traffic.
Definition: ipv6_multicast.c:54
void ipv6DropMulticastAddr(NetInterface *interface, const Ipv6Addr *groupAddr)
Reconfigure the MAC layer to reject multicast traffic.
Definition: ipv6_multicast.c:536
bool_t ipv6CompareSrcAddrLists(const Ipv6SrcAddrList *list1, const Ipv6SrcAddrList *list2)
Compare lists of sources.
Definition: ipv6_multicast.c:812
error_t ipv6MapMulticastAddrToMac(const Ipv6Addr *ipAddr, MacAddr *macAddr)
Map an IPv6 multicast address to a MAC-layer multicast address.
Definition: ipv6_multicast.c:569
void ipv6UpdateMulticastFilter(NetInterface *interface, const Ipv6Addr *groupAddr)
Update IPv6 multicast filter table.
Definition: ipv6_multicast.c:231
Ipv6FilterEntry * ipv6FindMulticastFilterEntry(NetInterface *interface, const Ipv6Addr *multicastAddr)
Search the multicast filter for a given address.
Definition: ipv6_multicast.c:654
void ipv6DeleteMulticastFilterEntry(Ipv6FilterEntry *entry)
Delete a multicast filter entry.
Definition: ipv6_multicast.c:686
error_t ipv6AddSrcAddr(Ipv6SrcAddrList *list, const Ipv6Addr *srcAddr)
Append a source address to a given list.
Definition: ipv6_multicast.c:699
TCP/IP stack core.
Ipv6FilterEntry * ipv6CreateMulticastFilterEntry(NetInterface *interface, const Ipv6Addr *multicastAddr)
Create a new multicast filter entry.
Definition: ipv6_multicast.c:610
error_t ipv6LeaveMulticastGroup(NetInterface *interface, const Ipv6Addr *groupAddr)
Leave an IPv6 multicast group.
Definition: ipv6_multicast.c:186