summaryrefslogtreecommitdiffstats
path: root/include/linux/ipv6_route.h
diff options
context:
space:
mode:
authorYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>2006-03-20 17:04:53 -0800
committerDavid S. Miller <davem@davemloft.net>2006-03-20 17:04:53 -0800
commitebacaaa0fdf4402cdf4c8e569f54af36b6f0aa2d (patch)
tree5d1cc0c6d94b5226507434bb86e6e2a69fdd4204 /include/linux/ipv6_route.h
parent8238dd0698b480e432acd955c45f9f907b8d27de (diff)
downloadlinux-ebacaaa0fdf4402cdf4c8e569f54af36b6f0aa2d.tar.gz
linux-ebacaaa0fdf4402cdf4c8e569f54af36b6f0aa2d.tar.bz2
linux-ebacaaa0fdf4402cdf4c8e569f54af36b6f0aa2d.zip
[IPV6]: ROUTE: Add support for Router Preference (RFC4191).
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/ipv6_route.h')
-rw-r--r--include/linux/ipv6_route.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/linux/ipv6_route.h b/include/linux/ipv6_route.h
index d7c41d1d706a..f4b085c91608 100644
--- a/include/linux/ipv6_route.h
+++ b/include/linux/ipv6_route.h
@@ -27,8 +27,16 @@
#define RTF_FLOW 0x02000000 /* flow significant route */
#define RTF_POLICY 0x04000000 /* policy route */
+#define RTF_PREF(pref) ((pref) << 27)
+#define RTF_PREF_MASK 0x18000000
+
#define RTF_LOCAL 0x80000000
+#ifdef __KERNEL__
+#define IPV6_EXTRACT_PREF(flag) (((flag) & RTF_PREF_MASK) >> 27)
+#define IPV6_DECODE_PREF(pref) ((pref) ^ 2) /* 1:low,2:med,3:high */
+#endif
+
struct in6_rtmsg {
struct in6_addr rtmsg_dst;
struct in6_addr rtmsg_src;