Blame view

kernel/linux-imx6_3.14.28/include/net/netns/conntrack.h 2.51 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
  #ifndef __NETNS_CONNTRACK_H
  #define __NETNS_CONNTRACK_H
  
  #include <linux/list.h>
  #include <linux/list_nulls.h>
  #include <linux/atomic.h>
  #include <linux/netfilter/nf_conntrack_tcp.h>
  
  struct ctl_table_header;
  struct nf_conntrack_ecache;
  
  struct nf_proto_net {
  #ifdef CONFIG_SYSCTL
  	struct ctl_table_header *ctl_table_header;
  	struct ctl_table        *ctl_table;
  #ifdef CONFIG_NF_CONNTRACK_PROC_COMPAT
  	struct ctl_table_header *ctl_compat_header;
  	struct ctl_table        *ctl_compat_table;
  #endif
  #endif
  	unsigned int		users;
  };
  
  struct nf_generic_net {
  	struct nf_proto_net pn;
  	unsigned int timeout;
  };
  
  struct nf_tcp_net {
  	struct nf_proto_net pn;
  	unsigned int timeouts[TCP_CONNTRACK_TIMEOUT_MAX];
  	unsigned int tcp_loose;
  	unsigned int tcp_be_liberal;
  	unsigned int tcp_max_retrans;
  };
  
  enum udp_conntrack {
  	UDP_CT_UNREPLIED,
  	UDP_CT_REPLIED,
  	UDP_CT_MAX
  };
  
  struct nf_udp_net {
  	struct nf_proto_net pn;
  	unsigned int timeouts[UDP_CT_MAX];
  };
  
  struct nf_icmp_net {
  	struct nf_proto_net pn;
  	unsigned int timeout;
  };
  
  struct nf_ip_net {
  	struct nf_generic_net   generic;
  	struct nf_tcp_net	tcp;
  	struct nf_udp_net	udp;
  	struct nf_icmp_net	icmp;
  	struct nf_icmp_net	icmpv6;
  #if defined(CONFIG_SYSCTL) && defined(CONFIG_NF_CONNTRACK_PROC_COMPAT)
  	struct ctl_table_header *ctl_table_header;
  	struct ctl_table	*ctl_table;
  #endif
  };
  
  struct netns_ct {
  	atomic_t		count;
  	unsigned int		expect_count;
  #ifdef CONFIG_SYSCTL
  	struct ctl_table_header	*sysctl_header;
  	struct ctl_table_header	*acct_sysctl_header;
  	struct ctl_table_header	*tstamp_sysctl_header;
  	struct ctl_table_header	*event_sysctl_header;
  	struct ctl_table_header	*helper_sysctl_header;
  #endif
  	char			*slabname;
  	unsigned int		sysctl_log_invalid; /* Log invalid packets */
  	unsigned int		sysctl_events_retry_timeout;
  	int			sysctl_events;
  	int			sysctl_acct;
  	int			sysctl_auto_assign_helper;
  	bool			auto_assign_helper_warned;
  	int			sysctl_tstamp;
  	int			sysctl_checksum;
  
  	unsigned int		htable_size;
  	struct kmem_cache	*nf_conntrack_cachep;
  	struct hlist_nulls_head	*hash;
  	struct hlist_head	*expect_hash;
  	struct hlist_nulls_head	unconfirmed;
  	struct hlist_nulls_head	dying;
  	struct hlist_nulls_head tmpl;
  	struct ip_conntrack_stat __percpu *stat;
  	struct nf_ct_event_notifier __rcu *nf_conntrack_event_cb;
  	struct nf_exp_event_notifier __rcu *nf_expect_event_cb;
  	struct nf_ip_net	nf_ct_proto;
  #if defined(CONFIG_NF_CONNTRACK_LABELS)
  	unsigned int		labels_used;
  	u8			label_words;
  #endif
  #ifdef CONFIG_NF_NAT_NEEDED
  	struct hlist_head	*nat_bysource;
  	unsigned int		nat_htable_size;
  #endif
  };
  #endif