diff options
Diffstat (limited to 'include/net/ip6_fib.h')
-rw-r--r-- | include/net/ip6_fib.h | 51 |
1 files changed, 21 insertions, 30 deletions
diff --git a/include/net/ip6_fib.h b/include/net/ip6_fib.h index 48ec25a7fcb6..6738f3409a6f 100644 --- a/include/net/ip6_fib.h +++ b/include/net/ip6_fib.h | |||
@@ -267,48 +267,39 @@ typedef struct rt6_info *(*pol_lookup_t)(struct net *, | |||
267 | * exported functions | 267 | * exported functions |
268 | */ | 268 | */ |
269 | 269 | ||
270 | extern struct fib6_table *fib6_get_table(struct net *net, u32 id); | 270 | struct fib6_table *fib6_get_table(struct net *net, u32 id); |
271 | extern struct fib6_table *fib6_new_table(struct net *net, u32 id); | 271 | struct fib6_table *fib6_new_table(struct net *net, u32 id); |
272 | extern struct dst_entry *fib6_rule_lookup(struct net *net, | 272 | struct dst_entry *fib6_rule_lookup(struct net *net, struct flowi6 *fl6, |
273 | struct flowi6 *fl6, int flags, | 273 | int flags, pol_lookup_t lookup); |
274 | pol_lookup_t lookup); | ||
275 | 274 | ||
276 | extern struct fib6_node *fib6_lookup(struct fib6_node *root, | 275 | struct fib6_node *fib6_lookup(struct fib6_node *root, |
277 | const struct in6_addr *daddr, | 276 | const struct in6_addr *daddr, |
278 | const struct in6_addr *saddr); | 277 | const struct in6_addr *saddr); |
279 | 278 | ||
280 | struct fib6_node *fib6_locate(struct fib6_node *root, | 279 | struct fib6_node *fib6_locate(struct fib6_node *root, |
281 | const struct in6_addr *daddr, int dst_len, | 280 | const struct in6_addr *daddr, int dst_len, |
282 | const struct in6_addr *saddr, int src_len); | 281 | const struct in6_addr *saddr, int src_len); |
283 | 282 | ||
284 | extern void fib6_clean_all_ro(struct net *net, | 283 | void fib6_clean_all(struct net *net, int (*func)(struct rt6_info *, void *arg), |
285 | int (*func)(struct rt6_info *, void *arg), | 284 | int prune, void *arg); |
286 | int prune, void *arg); | ||
287 | 285 | ||
288 | extern void fib6_clean_all(struct net *net, | 286 | int fib6_add(struct fib6_node *root, struct rt6_info *rt, struct nl_info *info); |
289 | int (*func)(struct rt6_info *, void *arg), | ||
290 | int prune, void *arg); | ||
291 | 287 | ||
292 | extern int fib6_add(struct fib6_node *root, | 288 | int fib6_del(struct rt6_info *rt, struct nl_info *info); |
293 | struct rt6_info *rt, | ||
294 | struct nl_info *info); | ||
295 | 289 | ||
296 | extern int fib6_del(struct rt6_info *rt, | 290 | void inet6_rt_notify(int event, struct rt6_info *rt, struct nl_info *info); |
297 | struct nl_info *info); | ||
298 | 291 | ||
299 | extern void inet6_rt_notify(int event, struct rt6_info *rt, | 292 | void fib6_run_gc(unsigned long expires, struct net *net, bool force); |
300 | struct nl_info *info); | ||
301 | 293 | ||
302 | extern void fib6_run_gc(unsigned long expires, | 294 | void fib6_gc_cleanup(void); |
303 | struct net *net, bool force); | ||
304 | 295 | ||
305 | extern void fib6_gc_cleanup(void); | 296 | int fib6_init(void); |
306 | 297 | ||
307 | extern int fib6_init(void); | 298 | int ipv6_route_open(struct inode *inode, struct file *file); |
308 | 299 | ||
309 | #ifdef CONFIG_IPV6_MULTIPLE_TABLES | 300 | #ifdef CONFIG_IPV6_MULTIPLE_TABLES |
310 | extern int fib6_rules_init(void); | 301 | int fib6_rules_init(void); |
311 | extern void fib6_rules_cleanup(void); | 302 | void fib6_rules_cleanup(void); |
312 | #else | 303 | #else |
313 | static inline int fib6_rules_init(void) | 304 | static inline int fib6_rules_init(void) |
314 | { | 305 | { |