ip6t_rt.h revision 350661a6eb089f3e54e67e022db9e16ea280499f
1#ifndef _IP6T_RT_H
2#define _IP6T_RT_H
3
4/*#include <linux/in6.h>*/
5
6#define IP6T_RT_HOPS 16
7
8struct ip6t_rt {
9	u_int32_t rt_type;			/* Routing Type */
10	u_int32_t segsleft[2];			/* Segments Left */
11	u_int32_t hdrlen;			/* Header Length */
12	u_int8_t  flags;			/*  */
13	u_int8_t  invflags;			/* Inverse flags */
14	struct in6_addr addrs[IP6T_RT_HOPS];	/* Hops */
15	u_int8_t addrnr;			/* Nr of Addresses */
16};
17
18#define IP6T_RT_TYP 		0x01
19#define IP6T_RT_SGS 		0x02
20#define IP6T_RT_LEN 		0x04
21#define IP6T_RT_RES 		0x08
22#define IP6T_RT_FST_MASK	0x30
23#define IP6T_RT_FST 		0x10
24#define IP6T_RT_FST_NSTRICT	0x20
25
26/* Values for "invflags" field in struct ip6t_rt. */
27#define IP6T_RT_INV_TYP		0x01	/* Invert the sense of type. */
28#define IP6T_RT_INV_SGS		0x02	/* Invert the sense of Segments. */
29#define IP6T_RT_INV_LEN		0x04	/* Invert the sense of length. */
30#define IP6T_RT_INV_MASK	0x07	/* All possible flags. */
31
32#endif /*_IP6T_RT_H*/
33