ipv6_route.h
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:1k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  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. #ifndef _LINUX_IPV6_ROUTE_H
  13. #define _LINUX_IPV6_ROUTE_H
  14. enum
  15. {
  16. RTA_IPV6_UNSPEC,
  17. RTA_IPV6_HOPLIMIT,
  18. };
  19. #define RTA_IPV6_MAX RTA_IPV6_HOPLIMIT
  20. #define RTF_DEFAULT 0x00010000 /* default - learned via ND */
  21. #define RTF_ALLONLINK 0x00020000 /* fallback, no routers on link */
  22. #define RTF_ADDRCONF 0x00040000 /* addrconf route - RA */
  23. #define RTF_NONEXTHOP 0x00200000 /* route with no nexthop */
  24. #define RTF_EXPIRES 0x00400000
  25. #define RTF_CACHE 0x01000000 /* cache entry */
  26. #define RTF_FLOW 0x02000000 /* flow significant route */
  27. #define RTF_POLICY 0x04000000 /* policy route */
  28. #define RTF_LOCAL 0x80000000
  29. struct in6_rtmsg {
  30. struct in6_addr rtmsg_dst;
  31. struct in6_addr rtmsg_src;
  32. struct in6_addr rtmsg_gateway;
  33. __u32 rtmsg_type;
  34. __u16 rtmsg_dst_len;
  35. __u16 rtmsg_src_len;
  36. __u32 rtmsg_metric;
  37. unsigned long rtmsg_info;
  38.         __u32 rtmsg_flags;
  39. int rtmsg_ifindex;
  40. };
  41. #define RTMSG_NEWDEVICE 0x11
  42. #define RTMSG_DELDEVICE 0x12
  43. #define RTMSG_NEWROUTE 0x21
  44. #define RTMSG_DELROUTE 0x22
  45. #endif