Linux Audio

Check our new training course

In-person Linux kernel drivers training

Jun 16-20, 2025
Register
Loading...
v3.1
 1/*
 2 * ipv6 in net namespaces
 3 */
 4
 5#include <net/inet_frag.h>
 6
 7#ifndef __NETNS_IPV6_H__
 8#define __NETNS_IPV6_H__
 9#include <net/dst_ops.h>
10
11struct ctl_table_header;
12
13struct netns_sysctl_ipv6 {
14#ifdef CONFIG_SYSCTL
15	struct ctl_table_header *table;
 
 
16	struct ctl_table_header *frags_hdr;
17#endif
18	int bindv6only;
19	int flush_delay;
20	int ip6_rt_max_size;
21	int ip6_rt_gc_min_interval;
22	int ip6_rt_gc_timeout;
23	int ip6_rt_gc_interval;
24	int ip6_rt_gc_elasticity;
25	int ip6_rt_mtu_expires;
26	int ip6_rt_min_advmss;
27	int icmpv6_time;
28};
29
30struct netns_ipv6 {
31	struct netns_sysctl_ipv6 sysctl;
32	struct ipv6_devconf	*devconf_all;
33	struct ipv6_devconf	*devconf_dflt;
34	struct netns_frags	frags;
35#ifdef CONFIG_NETFILTER
36	struct xt_table		*ip6table_filter;
37	struct xt_table		*ip6table_mangle;
38	struct xt_table		*ip6table_raw;
39#ifdef CONFIG_SECURITY
40	struct xt_table		*ip6table_security;
41#endif
42#endif
43	struct rt6_info         *ip6_null_entry;
44	struct rt6_statistics   *rt6_stats;
45	struct timer_list       ip6_fib_timer;
46	struct hlist_head       *fib_table_hash;
47	struct fib6_table       *fib6_main_tbl;
48	struct dst_ops		ip6_dst_ops;
49	unsigned int		 ip6_rt_gc_expire;
50	unsigned long		 ip6_rt_last_gc;
51#ifdef CONFIG_IPV6_MULTIPLE_TABLES
52	struct rt6_info         *ip6_prohibit_entry;
53	struct rt6_info         *ip6_blk_hole_entry;
54	struct fib6_table       *fib6_local_tbl;
55	struct fib_rules_ops    *fib6_rules_ops;
56#endif
57	struct sock		**icmp_sk;
58	struct sock             *ndisc_sk;
59	struct sock             *tcp_sk;
60	struct sock             *igmp_sk;
61#ifdef CONFIG_IPV6_MROUTE
62#ifndef CONFIG_IPV6_MROUTE_MULTIPLE_TABLES
63	struct mr6_table	*mrt6;
64#else
65	struct list_head	mr6_tables;
66	struct fib_rules_ops	*mr6_rules_ops;
67#endif
68#endif
69};
70#endif
v3.5.6
 1/*
 2 * ipv6 in net namespaces
 3 */
 4
 5#include <net/inet_frag.h>
 6
 7#ifndef __NETNS_IPV6_H__
 8#define __NETNS_IPV6_H__
 9#include <net/dst_ops.h>
10
11struct ctl_table_header;
12
13struct netns_sysctl_ipv6 {
14#ifdef CONFIG_SYSCTL
15	struct ctl_table_header *hdr;
16	struct ctl_table_header *route_hdr;
17	struct ctl_table_header *icmp_hdr;
18	struct ctl_table_header *frags_hdr;
19#endif
20	int bindv6only;
21	int flush_delay;
22	int ip6_rt_max_size;
23	int ip6_rt_gc_min_interval;
24	int ip6_rt_gc_timeout;
25	int ip6_rt_gc_interval;
26	int ip6_rt_gc_elasticity;
27	int ip6_rt_mtu_expires;
28	int ip6_rt_min_advmss;
29	int icmpv6_time;
30};
31
32struct netns_ipv6 {
33	struct netns_sysctl_ipv6 sysctl;
34	struct ipv6_devconf	*devconf_all;
35	struct ipv6_devconf	*devconf_dflt;
36	struct netns_frags	frags;
37#ifdef CONFIG_NETFILTER
38	struct xt_table		*ip6table_filter;
39	struct xt_table		*ip6table_mangle;
40	struct xt_table		*ip6table_raw;
41#ifdef CONFIG_SECURITY
42	struct xt_table		*ip6table_security;
43#endif
44#endif
45	struct rt6_info         *ip6_null_entry;
46	struct rt6_statistics   *rt6_stats;
47	struct timer_list       ip6_fib_timer;
48	struct hlist_head       *fib_table_hash;
49	struct fib6_table       *fib6_main_tbl;
50	struct dst_ops		ip6_dst_ops;
51	unsigned int		 ip6_rt_gc_expire;
52	unsigned long		 ip6_rt_last_gc;
53#ifdef CONFIG_IPV6_MULTIPLE_TABLES
54	struct rt6_info         *ip6_prohibit_entry;
55	struct rt6_info         *ip6_blk_hole_entry;
56	struct fib6_table       *fib6_local_tbl;
57	struct fib_rules_ops    *fib6_rules_ops;
58#endif
59	struct sock		**icmp_sk;
60	struct sock             *ndisc_sk;
61	struct sock             *tcp_sk;
62	struct sock             *igmp_sk;
63#ifdef CONFIG_IPV6_MROUTE
64#ifndef CONFIG_IPV6_MROUTE_MULTIPLE_TABLES
65	struct mr6_table	*mrt6;
66#else
67	struct list_head	mr6_tables;
68	struct fib_rules_ops	*mr6_rules_ops;
69#endif
70#endif
71};
72#endif