]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - include/linux/netfilter_ipv6/ip6t_rt.h
Linux-2.6.12-rc2
[mirror_ubuntu-artful-kernel.git] / include / linux / netfilter_ipv6 / ip6t_rt.h
1 #ifndef _IP6T_RT_H
2 #define _IP6T_RT_H
3
4 /*#include <linux/in6.h>*/
5
6 #define IP6T_RT_HOPS 16
7
8 struct ip6t_rt
9 {
10 u_int32_t rt_type; /* Routing Type */
11 u_int32_t segsleft[2]; /* Segments Left */
12 u_int32_t hdrlen; /* Header Length */
13 u_int8_t flags; /* */
14 u_int8_t invflags; /* Inverse flags */
15 struct in6_addr addrs[IP6T_RT_HOPS]; /* Hops */
16 u_int8_t 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 #define MASK_HOPOPTS 128
34 #define MASK_DSTOPTS 64
35 #define MASK_ROUTING 32
36 #define MASK_FRAGMENT 16
37 #define MASK_AH 8
38 #define MASK_ESP 4
39 #define MASK_NONE 2
40 #define MASK_PROTO 1
41
42 #endif /*_IP6T_RT_H*/