2007-12-16 13:29:36 -08:00
|
|
|
/*
|
|
|
|
|
* ipv4 in net namespaces
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
#ifndef __NETNS_IPV4_H__
|
|
|
|
|
#define __NETNS_IPV4_H__
|
2008-01-10 03:27:51 -08:00
|
|
|
|
2012-05-24 10:34:21 -06:00
|
|
|
#include <linux/uidgid.h>
|
2008-01-22 06:02:14 -08:00
|
|
|
#include <net/inet_frag.h>
|
|
|
|
|
|
2012-07-10 00:49:14 -07:00
|
|
|
struct tcpm_hash_bucket;
|
2007-12-16 13:31:47 -08:00
|
|
|
struct ctl_table_header;
|
|
|
|
|
struct ipv4_devconf;
|
2008-01-10 03:27:51 -08:00
|
|
|
struct fib_rules_ops;
|
2008-01-10 03:28:24 -08:00
|
|
|
struct hlist_head;
|
2012-07-05 22:13:13 -07:00
|
|
|
struct fib_table;
|
2008-01-10 03:28:55 -08:00
|
|
|
struct sock;
|
2013-09-28 14:10:59 -07:00
|
|
|
struct local_ports {
|
|
|
|
|
seqlock_t lock;
|
|
|
|
|
int range[2];
|
|
|
|
|
};
|
2007-12-16 13:31:47 -08:00
|
|
|
|
2014-05-06 11:02:50 -07:00
|
|
|
struct ping_group_range {
|
|
|
|
|
seqlock_t lock;
|
|
|
|
|
kgid_t range[2];
|
|
|
|
|
};
|
|
|
|
|
|
2007-12-16 13:29:36 -08:00
|
|
|
struct netns_ipv4 {
|
2008-01-05 23:08:49 -08:00
|
|
|
#ifdef CONFIG_SYSCTL
|
2007-12-16 13:31:47 -08:00
|
|
|
struct ctl_table_header *forw_hdr;
|
2008-01-22 06:08:36 -08:00
|
|
|
struct ctl_table_header *frags_hdr;
|
2008-03-26 01:56:24 -07:00
|
|
|
struct ctl_table_header *ipv4_hdr;
|
2008-07-05 19:02:33 -07:00
|
|
|
struct ctl_table_header *route_hdr;
|
2013-02-06 10:46:33 +01:00
|
|
|
struct ctl_table_header *xfrm4_hdr;
|
2008-01-05 23:08:49 -08:00
|
|
|
#endif
|
2007-12-16 13:31:47 -08:00
|
|
|
struct ipv4_devconf *devconf_all;
|
|
|
|
|
struct ipv4_devconf *devconf_dflt;
|
2008-01-10 03:27:51 -08:00
|
|
|
#ifdef CONFIG_IP_MULTIPLE_TABLES
|
|
|
|
|
struct fib_rules_ops *rules_ops;
|
2012-07-05 22:13:13 -07:00
|
|
|
bool fib_has_custom_rules;
|
|
|
|
|
struct fib_table *fib_local;
|
|
|
|
|
struct fib_table *fib_main;
|
|
|
|
|
struct fib_table *fib_default;
|
|
|
|
|
#endif
|
|
|
|
|
#ifdef CONFIG_IP_ROUTE_CLASSID
|
|
|
|
|
int fib_num_tclassid_users;
|
2008-01-10 03:27:51 -08:00
|
|
|
#endif
|
2008-01-10 03:28:24 -08:00
|
|
|
struct hlist_head *fib_table_hash;
|
2008-01-10 03:28:55 -08:00
|
|
|
struct sock *fibnl;
|
2008-01-22 06:02:14 -08:00
|
|
|
|
2008-02-29 11:19:58 -08:00
|
|
|
struct sock **icmp_sk;
|
2012-06-08 01:20:41 +00:00
|
|
|
struct inet_peer_base *peers;
|
2012-07-10 00:49:14 -07:00
|
|
|
struct tcpm_hash_bucket *tcp_metrics_hash;
|
2012-07-19 23:02:34 +00:00
|
|
|
unsigned int tcp_metrics_hash_log;
|
2008-01-22 06:02:14 -08:00
|
|
|
struct netns_frags frags;
|
2008-01-31 04:03:23 -08:00
|
|
|
#ifdef CONFIG_NETFILTER
|
|
|
|
|
struct xt_table *iptable_filter;
|
|
|
|
|
struct xt_table *iptable_mangle;
|
|
|
|
|
struct xt_table *iptable_raw;
|
2008-01-31 04:05:09 -08:00
|
|
|
struct xt_table *arptable_filter;
|
2010-01-18 08:08:37 +01:00
|
|
|
#ifdef CONFIG_SECURITY
|
2008-06-09 15:57:24 -07:00
|
|
|
struct xt_table *iptable_security;
|
2010-01-18 08:08:37 +01:00
|
|
|
#endif
|
2008-10-08 11:35:10 +02:00
|
|
|
struct xt_table *nat_table;
|
2008-01-31 04:03:23 -08:00
|
|
|
#endif
|
2008-03-26 01:55:37 -07:00
|
|
|
|
|
|
|
|
int sysctl_icmp_echo_ignore_all;
|
|
|
|
|
int sysctl_icmp_echo_ignore_broadcasts;
|
|
|
|
|
int sysctl_icmp_ignore_bogus_error_responses;
|
|
|
|
|
int sysctl_icmp_ratelimit;
|
|
|
|
|
int sysctl_icmp_ratemask;
|
|
|
|
|
int sysctl_icmp_errors_use_inbound_ifaddr;
|
2008-07-05 19:02:59 -07:00
|
|
|
|
2014-05-06 11:02:49 -07:00
|
|
|
struct local_ports ip_local_ports;
|
2013-09-28 14:10:59 -07:00
|
|
|
|
2013-01-05 16:10:48 +00:00
|
|
|
int sysctl_tcp_ecn;
|
2013-12-14 05:13:38 +01:00
|
|
|
int sysctl_ip_no_pmtu_disc;
|
2014-01-09 10:01:15 +01:00
|
|
|
int sysctl_ip_fwd_use_pmtu;
|
2013-01-05 16:10:48 +00:00
|
|
|
|
2014-05-13 10:17:33 -07:00
|
|
|
int sysctl_fwmark_reflect;
|
|
|
|
|
|
2014-05-06 11:02:50 -07:00
|
|
|
struct ping_group_range ping_group_range;
|
2011-05-13 10:01:00 +00:00
|
|
|
|
2011-03-24 17:42:21 -07:00
|
|
|
atomic_t dev_addr_genid;
|
2009-01-22 04:56:15 +00:00
|
|
|
|
|
|
|
|
#ifdef CONFIG_IP_MROUTE
|
2010-04-13 05:03:23 +00:00
|
|
|
#ifndef CONFIG_IP_MROUTE_MULTIPLE_TABLES
|
2010-04-13 05:03:22 +00:00
|
|
|
struct mr_table *mrt;
|
2010-04-13 05:03:23 +00:00
|
|
|
#else
|
|
|
|
|
struct list_head mr_tables;
|
|
|
|
|
struct fib_rules_ops *mr_rules_ops;
|
|
|
|
|
#endif
|
2009-01-22 04:56:15 +00:00
|
|
|
#endif
|
2013-07-30 08:33:53 +08:00
|
|
|
atomic_t rt_genid;
|
2007-12-16 13:29:36 -08:00
|
|
|
};
|
|
|
|
|
#endif
|