if_inet6.h (b65b34895437915f411882dd40d704eb0863ffb0) if_inet6.h (e9d3e084975869754d16f639378675c353560be9)
1/*
2 * inet6 interface/address list definitions
3 * Linux INET6 implementation
4 *
5 * Authors:
6 * Pedro Roque <roque@di.fc.ul.pt>
7 *
8 *

--- 18 unchanged lines hidden (view full) ---

27#define IF_READY 0x80000000
28
29/* prefix flags */
30#define IF_PREFIX_ONLINK 0x01
31#define IF_PREFIX_AUTOCONF 0x02
32
33#ifdef __KERNEL__
34
1/*
2 * inet6 interface/address list definitions
3 * Linux INET6 implementation
4 *
5 * Authors:
6 * Pedro Roque <roque@di.fc.ul.pt>
7 *
8 *

--- 18 unchanged lines hidden (view full) ---

27#define IF_READY 0x80000000
28
29/* prefix flags */
30#define IF_PREFIX_ONLINK 0x01
31#define IF_PREFIX_AUTOCONF 0x02
32
33#ifdef __KERNEL__
34
35enum {
36 INET6_IFADDR_STATE_DAD,
37 INET6_IFADDR_STATE_POSTDAD,
38 INET6_IFADDR_STATE_UP,
39 INET6_IFADDR_STATE_DEAD,
40};
41
35struct inet6_ifaddr {
36 struct in6_addr addr;
37 __u32 prefix_len;
38
39 __u32 valid_lft;
40 __u32 prefered_lft;
41 atomic_t refcnt;
42 spinlock_t lock;
42struct inet6_ifaddr {
43 struct in6_addr addr;
44 __u32 prefix_len;
45
46 __u32 valid_lft;
47 __u32 prefered_lft;
48 atomic_t refcnt;
49 spinlock_t lock;
50 spinlock_t state_lock;
43
51
52 int state;
53
44 __u8 probes;
45 __u8 flags;
46
47 __u16 scope;
48
49 unsigned long cstamp; /* created timestamp */
50 unsigned long tstamp; /* updated timestamp */
51
52 struct timer_list timer;
53
54 struct inet6_dev *idev;
55 struct rt6_info *rt;
56
54 __u8 probes;
55 __u8 flags;
56
57 __u16 scope;
58
59 unsigned long cstamp; /* created timestamp */
60 unsigned long tstamp; /* updated timestamp */
61
62 struct timer_list timer;
63
64 struct inet6_dev *idev;
65 struct rt6_info *rt;
66
57 struct inet6_ifaddr *lst_next; /* next addr in addr_lst */
58 struct inet6_ifaddr *if_next; /* next addr in inet6_dev */
67 struct hlist_node addr_lst;
68 struct list_head if_list;
59
60#ifdef CONFIG_IPV6_PRIVACY
69
70#ifdef CONFIG_IPV6_PRIVACY
61 struct inet6_ifaddr *tmp_next; /* next addr in tempaddr_lst */
71 struct list_head tmp_list;
62 struct inet6_ifaddr *ifpub;
63 int regen_count;
64#endif
72 struct inet6_ifaddr *ifpub;
73 int regen_count;
74#endif
65
66 int dead;
75 struct rcu_head rcu;
67};
68
69struct ip6_sf_socklist {
70 unsigned int sl_max;
71 unsigned int sl_count;
72 struct in6_addr sl_addr[0];
73};
74

--- 71 unchanged lines hidden (view full) ---

146struct ipv6_devstat {
147 struct proc_dir_entry *proc_dir_entry;
148 DEFINE_SNMP_STAT(struct ipstats_mib, ipv6);
149 DEFINE_SNMP_STAT(struct icmpv6_mib, icmpv6);
150 DEFINE_SNMP_STAT(struct icmpv6msg_mib, icmpv6msg);
151};
152
153struct inet6_dev {
76};
77
78struct ip6_sf_socklist {
79 unsigned int sl_max;
80 unsigned int sl_count;
81 struct in6_addr sl_addr[0];
82};
83

--- 71 unchanged lines hidden (view full) ---

155struct ipv6_devstat {
156 struct proc_dir_entry *proc_dir_entry;
157 DEFINE_SNMP_STAT(struct ipstats_mib, ipv6);
158 DEFINE_SNMP_STAT(struct icmpv6_mib, icmpv6);
159 DEFINE_SNMP_STAT(struct icmpv6msg_mib, icmpv6msg);
160};
161
162struct inet6_dev {
154 struct net_device *dev;
163 struct net_device *dev;
155
164
156 struct inet6_ifaddr *addr_list;
165 struct list_head addr_list;
157
158 struct ifmcaddr6 *mc_list;
159 struct ifmcaddr6 *mc_tomb;
160 spinlock_t mc_lock;
161 unsigned char mc_qrv;
162 unsigned char mc_gq_running;
163 unsigned char mc_ifc_count;
164 unsigned long mc_v1_seen;

--- 5 unchanged lines hidden (view full) ---

170 rwlock_t lock;
171 atomic_t refcnt;
172 __u32 if_flags;
173 int dead;
174
175#ifdef CONFIG_IPV6_PRIVACY
176 u8 rndid[8];
177 struct timer_list regen_timer;
166
167 struct ifmcaddr6 *mc_list;
168 struct ifmcaddr6 *mc_tomb;
169 spinlock_t mc_lock;
170 unsigned char mc_qrv;
171 unsigned char mc_gq_running;
172 unsigned char mc_ifc_count;
173 unsigned long mc_v1_seen;

--- 5 unchanged lines hidden (view full) ---

179 rwlock_t lock;
180 atomic_t refcnt;
181 __u32 if_flags;
182 int dead;
183
184#ifdef CONFIG_IPV6_PRIVACY
185 u8 rndid[8];
186 struct timer_list regen_timer;
178 struct inet6_ifaddr *tempaddr_list;
187 struct list_head tempaddr_list;
179#endif
180
181 struct neigh_parms *nd_parms;
182 struct inet6_dev *next;
183 struct ipv6_devconf cnf;
184 struct ipv6_devstat stats;
185 unsigned long tstamp; /* ipv6InterfaceTable update timestamp */
186 struct rcu_head rcu;

--- 94 unchanged lines hidden ---
188#endif
189
190 struct neigh_parms *nd_parms;
191 struct inet6_dev *next;
192 struct ipv6_devconf cnf;
193 struct ipv6_devstat stats;
194 unsigned long tstamp; /* ipv6InterfaceTable update timestamp */
195 struct rcu_head rcu;

--- 94 unchanged lines hidden ---