]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/ipv6_route.h
Merge commit 'gcl/next' into next
[linux-2.6-omap-h63xx.git] / include / linux / ipv6_route.h
index d7c41d1d706a30d592d6183079627afb101d42f8..1e7d8af2defe78d27bbe9c2518065b3679e63903 100644 (file)
@@ -13,6 +13,8 @@
 #ifndef _LINUX_IPV6_ROUTE_H
 #define _LINUX_IPV6_ROUTE_H
 
+#include <linux/types.h>
+
 #define RTF_DEFAULT    0x00010000      /* default - learned via ND     */
 #define RTF_ALLONLINK  0x00020000      /* (deprecated and will be removed)
                                           fallback, no routers on link */
 #define RTF_NONEXTHOP  0x00200000      /* route with no nexthop        */
 #define RTF_EXPIRES    0x00400000
 
+#define RTF_ROUTEINFO  0x00800000      /* route information - RA       */
+
 #define RTF_CACHE      0x01000000      /* cache entry                  */
 #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;