summaryrefslogtreecommitdiffstats
path: root/libc/kernel/common/linux/ipv6_route.h
blob: 3791e875257156486d9758294c1e7cdb0b3925e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
/****************************************************************************
 ****************************************************************************
 ***
 ***   This header was automatically generated from a Linux kernel header
 ***   of the same name, to make information necessary for userspace to
 ***   call into the kernel available to libc.  It contains only constants,
 ***   structures, and macros generated from the original header, and thus,
 ***   contains no copyrightable information.
 ***
 ****************************************************************************
 ****************************************************************************/
#ifndef _LINUX_IPV6_ROUTE_H
#define _LINUX_IPV6_ROUTE_H

#include <linux/types.h>

#define RTF_DEFAULT 0x00010000  
#define RTF_ALLONLINK 0x00020000  
#define RTF_ADDRCONF 0x00040000  
#define RTF_PREFIX_RT 0x00080000  
#define RTF_ANYCAST 0x00100000  

#define RTF_NONEXTHOP 0x00200000  
#define RTF_EXPIRES 0x00400000

#define RTF_ROUTEINFO 0x00800000  

#define RTF_CACHE 0x01000000  
#define RTF_FLOW 0x02000000  
#define RTF_POLICY 0x04000000  

#define RTF_PREF(pref) ((pref) << 27)
#define RTF_PREF_MASK 0x18000000

#define RTF_LOCAL 0x80000000

struct in6_rtmsg {
 struct in6_addr rtmsg_dst;
 struct in6_addr rtmsg_src;
 struct in6_addr rtmsg_gateway;
 __u32 rtmsg_type;
 __u16 rtmsg_dst_len;
 __u16 rtmsg_src_len;
 __u32 rtmsg_metric;
 unsigned long rtmsg_info;
 __u32 rtmsg_flags;
 int rtmsg_ifindex;
};

#define RTMSG_NEWDEVICE 0x11
#define RTMSG_DELDEVICE 0x12
#define RTMSG_NEWROUTE 0x21
#define RTMSG_DELROUTE 0x22

#endif