2008-01-10 18:49:06 +08:00
|
|
|
/*
|
|
|
|
* ipv6 in net namespaces
|
|
|
|
*/
|
|
|
|
|
2008-01-10 18:56:03 +08:00
|
|
|
#include <net/inet_frag.h>
|
|
|
|
|
2008-01-10 18:49:06 +08:00
|
|
|
#ifndef __NETNS_IPV6_H__
|
|
|
|
#define __NETNS_IPV6_H__
|
2009-08-29 09:34:49 +08:00
|
|
|
#include <net/dst_ops.h>
|
2008-01-10 18:49:06 +08:00
|
|
|
|
2008-01-10 18:53:43 +08:00
|
|
|
struct ctl_table_header;
|
|
|
|
|
|
|
|
struct netns_sysctl_ipv6 {
|
|
|
|
#ifdef CONFIG_SYSCTL
|
|
|
|
struct ctl_table_header *table;
|
2008-01-22 22:08:36 +08:00
|
|
|
struct ctl_table_header *frags_hdr;
|
2008-01-10 18:53:43 +08:00
|
|
|
#endif
|
2008-01-10 18:54:53 +08:00
|
|
|
int bindv6only;
|
2008-01-10 19:01:01 +08:00
|
|
|
int flush_delay;
|
|
|
|
int ip6_rt_max_size;
|
|
|
|
int ip6_rt_gc_min_interval;
|
|
|
|
int ip6_rt_gc_timeout;
|
|
|
|
int ip6_rt_gc_interval;
|
|
|
|
int ip6_rt_gc_elasticity;
|
|
|
|
int ip6_rt_mtu_expires;
|
|
|
|
int ip6_rt_min_advmss;
|
2008-01-10 19:02:40 +08:00
|
|
|
int icmpv6_time;
|
2008-01-10 18:53:43 +08:00
|
|
|
};
|
|
|
|
|
2008-01-10 18:49:06 +08:00
|
|
|
struct netns_ipv6 {
|
2008-01-10 18:53:43 +08:00
|
|
|
struct netns_sysctl_ipv6 sysctl;
|
2008-01-11 09:42:55 +08:00
|
|
|
struct ipv6_devconf *devconf_all;
|
|
|
|
struct ipv6_devconf *devconf_dflt;
|
2008-01-22 22:02:14 +08:00
|
|
|
struct netns_frags frags;
|
2008-01-31 20:04:13 +08:00
|
|
|
#ifdef CONFIG_NETFILTER
|
|
|
|
struct xt_table *ip6table_filter;
|
|
|
|
struct xt_table *ip6table_mangle;
|
|
|
|
struct xt_table *ip6table_raw;
|
2010-01-18 15:08:37 +08:00
|
|
|
#ifdef CONFIG_SECURITY
|
2008-06-10 06:58:05 +08:00
|
|
|
struct xt_table *ip6table_security;
|
2010-01-18 15:08:37 +08:00
|
|
|
#endif
|
2008-03-04 15:25:27 +08:00
|
|
|
#endif
|
2008-03-05 05:48:30 +08:00
|
|
|
struct rt6_info *ip6_null_entry;
|
2008-03-04 15:34:17 +08:00
|
|
|
struct rt6_statistics *rt6_stats;
|
2008-07-23 05:33:45 +08:00
|
|
|
struct timer_list ip6_fib_timer;
|
2008-03-04 15:25:27 +08:00
|
|
|
struct hlist_head *fib_table_hash;
|
|
|
|
struct fib6_table *fib6_main_tbl;
|
2009-08-29 09:34:49 +08:00
|
|
|
struct dst_ops ip6_dst_ops;
|
2008-03-05 05:49:47 +08:00
|
|
|
unsigned int ip6_rt_gc_expire;
|
|
|
|
unsigned long ip6_rt_last_gc;
|
2008-03-04 15:25:27 +08:00
|
|
|
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
2008-03-05 05:48:30 +08:00
|
|
|
struct rt6_info *ip6_prohibit_entry;
|
|
|
|
struct rt6_info *ip6_blk_hole_entry;
|
2008-03-04 15:25:27 +08:00
|
|
|
struct fib6_table *fib6_local_tbl;
|
2008-03-04 15:33:08 +08:00
|
|
|
struct fib_rules_ops *fib6_rules_ops;
|
2008-01-31 20:04:13 +08:00
|
|
|
#endif
|
2008-03-01 03:21:22 +08:00
|
|
|
struct sock **icmp_sk;
|
2008-03-08 03:15:34 +08:00
|
|
|
struct sock *ndisc_sk;
|
2008-03-08 03:16:02 +08:00
|
|
|
struct sock *tcp_sk;
|
2008-03-08 03:16:55 +08:00
|
|
|
struct sock *igmp_sk;
|
2008-12-11 08:07:08 +08:00
|
|
|
#ifdef CONFIG_IPV6_MROUTE
|
|
|
|
struct sock *mroute6_sk;
|
2010-05-11 20:40:48 +08:00
|
|
|
struct timer_list ipmr_expire_timer;
|
|
|
|
struct mfc6_cache *mfc6_unres_queue;
|
2008-12-11 08:24:07 +08:00
|
|
|
struct mfc6_cache **mfc6_cache_array;
|
2008-12-11 08:15:08 +08:00
|
|
|
struct mif_device *vif6_table;
|
|
|
|
int maxvif;
|
2008-12-11 08:27:21 +08:00
|
|
|
atomic_t cache_resolve_queue_len;
|
2008-12-11 08:28:44 +08:00
|
|
|
int mroute_do_assert;
|
|
|
|
int mroute_do_pim;
|
2008-12-11 08:29:24 +08:00
|
|
|
#ifdef CONFIG_IPV6_PIMSM_V2
|
|
|
|
int mroute_reg_vif_num;
|
|
|
|
#endif
|
2008-12-11 08:07:08 +08:00
|
|
|
#endif
|
2008-01-10 18:49:06 +08:00
|
|
|
};
|
|
|
|
#endif
|