diff options
Diffstat (limited to 'include/net/ndisc.h')
-rw-r--r-- | include/net/ndisc.h | 61 |
1 files changed, 26 insertions, 35 deletions
diff --git a/include/net/ndisc.h b/include/net/ndisc.h index ea0cc26ab70e..6bbda34d5e59 100644 --- a/include/net/ndisc.h +++ b/include/net/ndisc.h | |||
@@ -110,8 +110,8 @@ struct ndisc_options { | |||
110 | 110 | ||
111 | #define NDISC_OPT_SPACE(len) (((len)+2+7)&~7) | 111 | #define NDISC_OPT_SPACE(len) (((len)+2+7)&~7) |
112 | 112 | ||
113 | extern struct ndisc_options *ndisc_parse_options(u8 *opt, int opt_len, | 113 | struct ndisc_options *ndisc_parse_options(u8 *opt, int opt_len, |
114 | struct ndisc_options *ndopts); | 114 | struct ndisc_options *ndopts); |
115 | 115 | ||
116 | /* | 116 | /* |
117 | * Return the padding between the option length and the start of the | 117 | * Return the padding between the option length and the start of the |
@@ -189,60 +189,51 @@ static inline struct neighbour *__ipv6_neigh_lookup(struct net_device *dev, cons | |||
189 | return n; | 189 | return n; |
190 | } | 190 | } |
191 | 191 | ||
192 | extern int ndisc_init(void); | 192 | int ndisc_init(void); |
193 | extern int ndisc_late_init(void); | 193 | int ndisc_late_init(void); |
194 | 194 | ||
195 | extern void ndisc_late_cleanup(void); | 195 | void ndisc_late_cleanup(void); |
196 | extern void ndisc_cleanup(void); | 196 | void ndisc_cleanup(void); |
197 | 197 | ||
198 | extern int ndisc_rcv(struct sk_buff *skb); | 198 | int ndisc_rcv(struct sk_buff *skb); |
199 | 199 | ||
200 | extern void ndisc_send_ns(struct net_device *dev, | 200 | void ndisc_send_ns(struct net_device *dev, struct neighbour *neigh, |
201 | struct neighbour *neigh, | 201 | const struct in6_addr *solicit, |
202 | const struct in6_addr *solicit, | 202 | const struct in6_addr *daddr, const struct in6_addr *saddr); |
203 | const struct in6_addr *daddr, | ||
204 | const struct in6_addr *saddr); | ||
205 | 203 | ||
206 | extern void ndisc_send_rs(struct net_device *dev, | 204 | void ndisc_send_rs(struct net_device *dev, |
207 | const struct in6_addr *saddr, | 205 | const struct in6_addr *saddr, const struct in6_addr *daddr); |
208 | const struct in6_addr *daddr); | 206 | void ndisc_send_na(struct net_device *dev, struct neighbour *neigh, |
209 | extern void ndisc_send_na(struct net_device *dev, struct neighbour *neigh, | 207 | const struct in6_addr *daddr, |
210 | const struct in6_addr *daddr, | 208 | const struct in6_addr *solicited_addr, |
211 | const struct in6_addr *solicited_addr, | 209 | bool router, bool solicited, bool override, bool inc_opt); |
212 | bool router, bool solicited, bool override, | ||
213 | bool inc_opt); | ||
214 | 210 | ||
215 | extern void ndisc_send_redirect(struct sk_buff *skb, | 211 | void ndisc_send_redirect(struct sk_buff *skb, const struct in6_addr *target); |
216 | const struct in6_addr *target); | ||
217 | 212 | ||
218 | extern int ndisc_mc_map(const struct in6_addr *addr, char *buf, | 213 | int ndisc_mc_map(const struct in6_addr *addr, char *buf, struct net_device *dev, |
219 | struct net_device *dev, int dir); | 214 | int dir); |
220 | 215 | ||
221 | 216 | ||
222 | /* | 217 | /* |
223 | * IGMP | 218 | * IGMP |
224 | */ | 219 | */ |
225 | extern int igmp6_init(void); | 220 | int igmp6_init(void); |
226 | 221 | ||
227 | extern void igmp6_cleanup(void); | 222 | void igmp6_cleanup(void); |
228 | 223 | ||
229 | extern int igmp6_event_query(struct sk_buff *skb); | 224 | int igmp6_event_query(struct sk_buff *skb); |
230 | 225 | ||
231 | extern int igmp6_event_report(struct sk_buff *skb); | 226 | int igmp6_event_report(struct sk_buff *skb); |
232 | 227 | ||
233 | 228 | ||
234 | #ifdef CONFIG_SYSCTL | 229 | #ifdef CONFIG_SYSCTL |
235 | extern int ndisc_ifinfo_sysctl_change(struct ctl_table *ctl, | 230 | int ndisc_ifinfo_sysctl_change(struct ctl_table *ctl, int write, |
236 | int write, | 231 | void __user *buffer, size_t *lenp, loff_t *ppos); |
237 | void __user *buffer, | ||
238 | size_t *lenp, | ||
239 | loff_t *ppos); | ||
240 | int ndisc_ifinfo_sysctl_strategy(struct ctl_table *ctl, | 232 | int ndisc_ifinfo_sysctl_strategy(struct ctl_table *ctl, |
241 | void __user *oldval, size_t __user *oldlenp, | 233 | void __user *oldval, size_t __user *oldlenp, |
242 | void __user *newval, size_t newlen); | 234 | void __user *newval, size_t newlen); |
243 | #endif | 235 | #endif |
244 | 236 | ||
245 | extern void inet6_ifinfo_notify(int event, | 237 | void inet6_ifinfo_notify(int event, struct inet6_dev *idev); |
246 | struct inet6_dev *idev); | ||
247 | 238 | ||
248 | #endif | 239 | #endif |