2 * ipv4 in net namespaces
5 #ifndef __NETNS_IPV4_H__
6 #define __NETNS_IPV4_H__
8 #include <linux/uidgid.h>
9 #include <net/inet_frag.h>
10 #include <linux/rcupdate.h>
12 struct tcpm_hash_bucket
;
13 struct ctl_table_header
;
25 struct ping_group_range
{
32 struct ctl_table_header
*forw_hdr
;
33 struct ctl_table_header
*frags_hdr
;
34 struct ctl_table_header
*ipv4_hdr
;
35 struct ctl_table_header
*route_hdr
;
36 struct ctl_table_header
*xfrm4_hdr
;
38 struct ipv4_devconf
*devconf_all
;
39 struct ipv4_devconf
*devconf_dflt
;
40 #ifdef CONFIG_IP_MULTIPLE_TABLES
41 struct fib_rules_ops
*rules_ops
;
42 bool fib_has_custom_rules
;
43 struct fib_table __rcu
*fib_main
;
44 struct fib_table __rcu
*fib_default
;
46 #ifdef CONFIG_IP_ROUTE_CLASSID
47 int fib_num_tclassid_users
;
49 struct hlist_head
*fib_table_hash
;
50 bool fib_offload_disabled
;
53 struct sock
* __percpu
*icmp_sk
;
54 struct sock
*mc_autojoin_sk
;
56 struct inet_peer_base
*peers
;
57 struct sock
* __percpu
*tcp_sk
;
58 struct netns_frags frags
;
59 #ifdef CONFIG_NETFILTER
60 struct xt_table
*iptable_filter
;
61 struct xt_table
*iptable_mangle
;
62 struct xt_table
*iptable_raw
;
63 struct xt_table
*arptable_filter
;
64 #ifdef CONFIG_SECURITY
65 struct xt_table
*iptable_security
;
67 struct xt_table
*nat_table
;
70 int sysctl_icmp_echo_ignore_all
;
71 int sysctl_icmp_echo_ignore_broadcasts
;
72 int sysctl_icmp_ignore_bogus_error_responses
;
73 int sysctl_icmp_ratelimit
;
74 int sysctl_icmp_ratemask
;
75 int sysctl_icmp_errors_use_inbound_ifaddr
;
77 struct local_ports ip_local_ports
;
80 int sysctl_tcp_ecn_fallback
;
82 int sysctl_ip_default_ttl
;
83 int sysctl_ip_no_pmtu_disc
;
84 int sysctl_ip_fwd_use_pmtu
;
85 int sysctl_ip_nonlocal_bind
;
86 /* Shall we try to damage output packets if routing dev changes? */
87 int sysctl_ip_dynaddr
;
88 int sysctl_ip_early_demux
;
90 int sysctl_fwmark_reflect
;
91 int sysctl_tcp_fwmark_accept
;
92 #ifdef CONFIG_NET_L3_MASTER_DEV
93 int sysctl_tcp_l3mdev_accept
;
95 int sysctl_tcp_mtu_probing
;
96 int sysctl_tcp_base_mss
;
97 int sysctl_tcp_probe_threshold
;
98 u32 sysctl_tcp_probe_interval
;
100 int sysctl_tcp_keepalive_time
;
101 int sysctl_tcp_keepalive_probes
;
102 int sysctl_tcp_keepalive_intvl
;
104 int sysctl_tcp_syn_retries
;
105 int sysctl_tcp_synack_retries
;
106 int sysctl_tcp_syncookies
;
107 int sysctl_tcp_reordering
;
108 int sysctl_tcp_retries1
;
109 int sysctl_tcp_retries2
;
110 int sysctl_tcp_orphan_retries
;
111 int sysctl_tcp_fin_timeout
;
112 unsigned int sysctl_tcp_notsent_lowat
;
114 int sysctl_igmp_max_memberships
;
115 int sysctl_igmp_max_msf
;
116 int sysctl_igmp_llm_reports
;
119 struct ping_group_range ping_group_range
;
121 atomic_t dev_addr_genid
;
124 unsigned long *sysctl_local_reserved_ports
;
127 #ifdef CONFIG_IP_MROUTE
128 #ifndef CONFIG_IP_MROUTE_MULTIPLE_TABLES
129 struct mr_table
*mrt
;
131 struct list_head mr_tables
;
132 struct fib_rules_ops
*mr_rules_ops
;
135 #ifdef CONFIG_IP_ROUTE_MULTIPATH
136 int sysctl_fib_multipath_use_neigh
;