linux/include/linux/ipv6_route.h
<<
>>
Prefs
   1/*
   2 *      Linux INET6 implementation 
   3 *
   4 *      Authors:
   5 *      Pedro Roque             <roque@di.fc.ul.pt>     
   6 *
   7 *      This program is free software; you can redistribute it and/or
   8 *      modify it under the terms of the GNU General Public License
   9 *      as published by the Free Software Foundation; either version
  10 *      2 of the License, or (at your option) any later version.
  11 */
  12
  13#ifndef _LINUX_IPV6_ROUTE_H
  14#define _LINUX_IPV6_ROUTE_H
  15
  16#include <linux/types.h>
  17
  18#define RTF_DEFAULT     0x00010000      /* default - learned via ND     */
  19#define RTF_ALLONLINK   0x00020000      /* (deprecated and will be removed)
  20                                           fallback, no routers on link */
  21#define RTF_ADDRCONF    0x00040000      /* addrconf route - RA          */
  22#define RTF_PREFIX_RT   0x00080000      /* A prefix only route - RA     */
  23#define RTF_ANYCAST     0x00100000      /* Anycast                      */
  24
  25#define RTF_NONEXTHOP   0x00200000      /* route with no nexthop        */
  26#define RTF_EXPIRES     0x00400000
  27
  28#define RTF_ROUTEINFO   0x00800000      /* route information - RA       */
  29
  30#define RTF_CACHE       0x01000000      /* cache entry                  */
  31#define RTF_FLOW        0x02000000      /* flow significant route       */
  32#define RTF_POLICY      0x04000000      /* policy route                 */
  33
  34#define RTF_PREF(pref)  ((pref) << 27)
  35#define RTF_PREF_MASK   0x18000000
  36
  37#define RTF_LOCAL       0x80000000
  38
  39#ifdef __KERNEL__
  40#define IPV6_EXTRACT_PREF(flag) (((flag) & RTF_PREF_MASK) >> 27)
  41#define IPV6_DECODE_PREF(pref)  ((pref) ^ 2)    /* 1:low,2:med,3:high */
  42#endif
  43
  44struct in6_rtmsg {
  45        struct in6_addr         rtmsg_dst;
  46        struct in6_addr         rtmsg_src;
  47        struct in6_addr         rtmsg_gateway;
  48        __u32                   rtmsg_type;
  49        __u16                   rtmsg_dst_len;
  50        __u16                   rtmsg_src_len;
  51        __u32                   rtmsg_metric;
  52        unsigned long           rtmsg_info;
  53        __u32                   rtmsg_flags;
  54        int                     rtmsg_ifindex;
  55};
  56
  57#define RTMSG_NEWDEVICE         0x11
  58#define RTMSG_DELDEVICE         0x12
  59#define RTMSG_NEWROUTE          0x21
  60#define RTMSG_DELROUTE          0x22
  61
  62#endif
  63
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.