diff options
Diffstat (limited to 'include/net/ip6_route.h')
| -rw-r--r-- | include/net/ip6_route.h | 21 | 
1 files changed, 21 insertions, 0 deletions
diff --git a/include/net/ip6_route.h b/include/net/ip6_route.h index 50161322b82..a398ae5e30f 100644 --- a/include/net/ip6_route.h +++ b/include/net/ip6_route.h @@ -7,6 +7,23 @@  #define IP6_RT_PRIO_KERN	512  #define IP6_RT_FLOW_MASK	0x00ff +struct route_info { +	__u8			type; +	__u8			length; +	__u8			prefix_len; +#if defined(__BIG_ENDIAN_BITFIELD) +	__u8			reserved_h:3, +				route_pref:2, +				reserved_l:3; +#elif defined(__LITTLE_ENDIAN_BITFIELD) +	__u8			reserved_l:3, +				route_pref:2, +				reserved_h:3; +#endif +	__u32			lifetime; +	__u8			prefix[0];	/* 0,8 or 16 */ +}; +  #ifdef __KERNEL__  #include <net/flow.h> @@ -92,6 +109,10 @@ extern struct rt6_info *	rt6_add_dflt_router(struct in6_addr *gwaddr,  extern void			rt6_purge_dflt_routers(void); +extern int			rt6_route_rcv(struct net_device *dev, +					      u8 *opt, int len, +					      struct in6_addr *gwaddr); +  extern void			rt6_redirect(struct in6_addr *dest,  					     struct in6_addr *saddr,  					     struct neighbour *neigh,  |