1/* 2 * ipv4 in net namespaces 3 */ 4 5#ifndef __NETNS_IPV4_H__ 6#define __NETNS_IPV4_H__ 7 8#include <net/inet_frag.h> 9 10struct ctl_table_header; 11struct ipv4_devconf; 12struct fib_rules_ops; 13struct hlist_head; 14struct sock; 15 16struct netns_ipv4 { 17#ifdef CONFIG_SYSCTL 18 struct ctl_table_header *forw_hdr; 19 struct ctl_table_header *frags_hdr; 20 struct ctl_table_header *ipv4_hdr; 21 struct ctl_table_header *route_hdr; 22#endif 23 struct ipv4_devconf *devconf_all; 24 struct ipv4_devconf *devconf_dflt; 25#ifdef CONFIG_IP_MULTIPLE_TABLES 26 struct fib_rules_ops *rules_ops; 27#endif 28 struct hlist_head *fib_table_hash; 29 struct sock *fibnl; 30 31 struct sock **icmp_sk; 32 struct sock *tcp_sock; 33 34 struct netns_frags frags; 35#ifdef CONFIG_NETFILTER 36 struct xt_table *iptable_filter; 37 struct xt_table *iptable_mangle; 38 struct xt_table *iptable_raw; 39 struct xt_table *arptable_filter; 40 struct xt_table *iptable_security; 41 struct xt_table *nat_table; 42 struct hlist_head *nat_bysource; 43 int nat_vmalloced; 44#endif 45 46 int sysctl_icmp_echo_ignore_all; 47 int sysctl_icmp_echo_ignore_broadcasts; 48 int sysctl_icmp_ignore_bogus_error_responses; 49 int sysctl_icmp_ratelimit; 50 int sysctl_icmp_ratemask; 51 int sysctl_icmp_errors_use_inbound_ifaddr; 52 int sysctl_rt_cache_rebuild_count; 53 int current_rt_cache_rebuild_count; 54 55 struct timer_list rt_secret_timer; 56 atomic_t rt_genid; 57 58#ifdef CONFIG_IP_MROUTE 59 struct sock *mroute_sk; 60 struct mfc_cache **mfc_cache_array; 61 struct vif_device *vif_table; 62 int maxvif; 63 atomic_t cache_resolve_queue_len; 64 int mroute_do_assert; 65 int mroute_do_pim; 66#if defined(CONFIG_IP_PIMSM_V1) || defined(CONFIG_IP_PIMSM_V2) 67 int mroute_reg_vif_num; 68#endif 69#endif 70}; 71#endif 72