Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
ip6t_rt.h
Go to the documentation of this file.
1 #ifndef _IP6T_RT_H
2 #define _IP6T_RT_H
3 
4 #include <linux/types.h>
5 /*#include <linux/in6.h>*/
6 
7 #define IP6T_RT_HOPS 16
8 
9 struct ip6t_rt {
10  __u32 rt_type; /* Routing Type */
11  __u32 segsleft[2]; /* Segments Left */
12  __u32 hdrlen; /* Header Length */
13  __u8 flags; /* */
14  __u8 invflags; /* Inverse flags */
15  struct in6_addr addrs[IP6T_RT_HOPS]; /* Hops */
16  __u8 addrnr; /* Nr of Addresses */
17 };
18 
19 #define IP6T_RT_TYP 0x01
20 #define IP6T_RT_SGS 0x02
21 #define IP6T_RT_LEN 0x04
22 #define IP6T_RT_RES 0x08
23 #define IP6T_RT_FST_MASK 0x30
24 #define IP6T_RT_FST 0x10
25 #define IP6T_RT_FST_NSTRICT 0x20
26 
27 /* Values for "invflags" field in struct ip6t_rt. */
28 #define IP6T_RT_INV_TYP 0x01 /* Invert the sense of type. */
29 #define IP6T_RT_INV_SGS 0x02 /* Invert the sense of Segments. */
30 #define IP6T_RT_INV_LEN 0x04 /* Invert the sense of length. */
31 #define IP6T_RT_INV_MASK 0x07 /* All possible flags. */
32 
33 #endif /*_IP6T_RT_H*/