#include <linux/module.h>
#include <linux/errno.h>
#include <linux/types.h>
#include <linux/string.h>
#include <linux/socket.h>
#include <linux/sockios.h>
#include <linux/jiffies.h>
#include <linux/times.h>
#include <linux/net.h>
#include <linux/in.h>
#include <linux/in6.h>
#include <linux/netdevice.h>
#include <linux/if_arp.h>
#include <linux/route.h>
#include <linux/init.h>
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
#include <linux/slab.h>
#include <net/mld.h>
#include <linux/netfilter.h>
#include <linux/netfilter_ipv6.h>
#include <net/net_namespace.h>
#include <net/sock.h>
#include <net/snmp.h>
#include <net/ipv6.h>
#include <net/protocol.h>
#include <net/if_inet6.h>
#include <net/ndisc.h>
#include <net/addrconf.h>
#include <net/ip6_route.h>
#include <net/inet_common.h>
#include <net/ip6_checksum.h>
Go to the source code of this file.
|
int | ipv6_sock_mc_join (struct sock *sk, int ifindex, const struct in6_addr *addr) |
|
int | ipv6_sock_mc_drop (struct sock *sk, int ifindex, const struct in6_addr *addr) |
|
void | ipv6_sock_mc_close (struct sock *sk) |
|
int | ip6_mc_source (int add, int omode, struct sock *sk, struct group_source_req *pgsr) |
|
int | ip6_mc_msfilter (struct sock *sk, struct group_filter *gsf) |
|
int | ip6_mc_msfget (struct sock *sk, struct group_filter *gsf, struct group_filter __user *optval, int __user *optlen) |
|
bool | inet6_mc_check (struct sock *sk, const struct in6_addr *mc_addr, const struct in6_addr *src_addr) |
|
int | ipv6_dev_mc_inc (struct net_device *dev, const struct in6_addr *addr) |
|
int | __ipv6_dev_mc_dec (struct inet6_dev *idev, const struct in6_addr *addr) |
|
int | ipv6_dev_mc_dec (struct net_device *dev, const struct in6_addr *addr) |
|
bool | ipv6_is_mld (struct sk_buff *skb, int nexthdr) |
|
bool | ipv6_chk_mcast_addr (struct net_device *dev, const struct in6_addr *group, const struct in6_addr *src_addr) |
|
int | igmp6_event_query (struct sk_buff *skb) |
|
int | igmp6_event_report (struct sk_buff *skb) |
|
void | ipv6_mc_unmap (struct inet6_dev *idev) |
|
void | ipv6_mc_remap (struct inet6_dev *idev) |
|
void | ipv6_mc_down (struct inet6_dev *idev) |
|
void | ipv6_mc_up (struct inet6_dev *idev) |
|
void | ipv6_mc_init_dev (struct inet6_dev *idev) |
|
void | ipv6_mc_destroy_dev (struct inet6_dev *idev) |
|
int __init | igmp6_init (void) |
|
void | igmp6_cleanup (void) |
|
#define for_each_pmc_rcu |
( |
|
np, |
|
|
|
pmc |
|
) |
| |
#define IGMP6_UNSOLICITED_IVAL (10*HZ) |
#define IPV6_MLD_MAX_MSF 64 |
#define MLD_QRV_DEFAULT 2 |
#define MLD_V1_SEEN |
( |
|
idev | ) |
|
Value:(dev_net((
idev)->
dev)->ipv6.devconf_all->force_mld_version == 1 || \
(
idev)->cnf.force_mld_version == 1 || \
time_before(jiffies, (
idev)->mc_v1_seen)))
Definition at line 113 of file mcast.c.