root/include/uapi/linux/ipv6_route.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


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

/* [<][>][^][v][top][bottom][index][help] */