__u16 fn_bit; /* bit key */
__u16 fn_flags;
__u32 fn_sernum;
+ struct rt6_info *rr_ptr;
};
#ifndef CONFIG_IPV6_SUBTREES
u32 rt6i_flags;
u32 rt6i_metric;
atomic_t rt6i_ref;
+
+ /* more non-fragment space at head required */
+ unsigned short rt6i_nfheader_len;
+
+ u8 rt6i_protocol;
+
struct fib6_table *rt6i_table;
struct rt6key rt6i_dst;
- struct rt6key rt6i_src;
- u8 rt6i_protocol;
+#ifdef CONFIG_XFRM
+ u32 rt6i_flow_cache_genid;
+#endif
+
+ struct rt6key rt6i_src;
};
static inline struct inet6_dev *ip6_dst_idev(struct dst_entry *dst)
extern void fib6_gc_cleanup(void);
-extern void fib6_init(void);
+extern int fib6_init(void);
-extern void fib6_rules_init(void);
+#ifdef CONFIG_IPV6_MULTIPLE_TABLES
+extern int fib6_rules_init(void);
extern void fib6_rules_cleanup(void);
-extern int fib6_rules_dump(struct sk_buff *,
- struct netlink_callback *);
-
+#else
+static inline int fib6_rules_init(void)
+{
+ return 0;
+}
+static inline void fib6_rules_cleanup(void)
+{
+ return ;
+}
+#endif
#endif
#endif