11dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project/****************************************************************************
21dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project ****************************************************************************
31dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project ***
41dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project ***   This header was automatically generated from a Linux kernel header
51dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project ***   of the same name, to make information necessary for userspace to
61dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project ***   call into the kernel available to libc.  It contains only constants,
71dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project ***   structures, and macros generated from the original header, and thus,
81dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project ***   contains no copyrightable information.
91dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project ***
10654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng ***   To edit the content of this header, modify the corresponding
11654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng ***   source file (e.g. under external/kernel-headers/original/) then
12654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng ***   run bionic/libc/kernel/tools/update_all.py
13654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng ***
14654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng ***   Any manual change here will be lost the next time this script will
15654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng ***   be run. You've been warned!
16654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng ***
171dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project ****************************************************************************
181dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project ****************************************************************************/
191dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#ifndef __LINUX_RTNETLINK_H
201dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define __LINUX_RTNETLINK_H
219163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#include <linux/types.h>
221dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#include <linux/netlink.h>
23654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
249163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#include <linux/if_link.h>
259163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#include <linux/if_addr.h>
269163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#include <linux/neighbour.h>
27ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidt#define RTNL_FAMILY_IPMR 128
28654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidt#define RTNL_FAMILY_IP6MR 129
30ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidt#define RTNL_FAMILY_MAX 129
311dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectenum {
321dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_BASE = 16,
33654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
341dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_BASE RTM_BASE
351dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_NEWLINK = 16,
361dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NEWLINK RTM_NEWLINK
371dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_DELLINK,
38654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
391dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_DELLINK RTM_DELLINK
401dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_GETLINK,
411dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_GETLINK RTM_GETLINK
421dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_SETLINK,
43654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
441dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_SETLINK RTM_SETLINK
451dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_NEWADDR = 20,
461dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NEWADDR RTM_NEWADDR
471dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_DELADDR,
48654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
491dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_DELADDR RTM_DELADDR
501dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_GETADDR,
511dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_GETADDR RTM_GETADDR
521dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_NEWROUTE = 24,
53654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
541dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NEWROUTE RTM_NEWROUTE
551dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_DELROUTE,
561dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_DELROUTE RTM_DELROUTE
571dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_GETROUTE,
58654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
591dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_GETROUTE RTM_GETROUTE
601dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_NEWNEIGH = 28,
611dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NEWNEIGH RTM_NEWNEIGH
621dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_DELNEIGH,
63654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
641dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_DELNEIGH RTM_DELNEIGH
651dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_GETNEIGH,
661dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_GETNEIGH RTM_GETNEIGH
671dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_NEWRULE = 32,
68654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
691dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NEWRULE RTM_NEWRULE
701dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_DELRULE,
711dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_DELRULE RTM_DELRULE
721dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_GETRULE,
73654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
741dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_GETRULE RTM_GETRULE
751dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_NEWQDISC = 36,
761dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NEWQDISC RTM_NEWQDISC
771dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_DELQDISC,
78654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
791dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_DELQDISC RTM_DELQDISC
801dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_GETQDISC,
811dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_GETQDISC RTM_GETQDISC
821dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_NEWTCLASS = 40,
83654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
841dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NEWTCLASS RTM_NEWTCLASS
851dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_DELTCLASS,
861dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_DELTCLASS RTM_DELTCLASS
871dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_GETTCLASS,
88654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
891dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_GETTCLASS RTM_GETTCLASS
901dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_NEWTFILTER = 44,
911dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NEWTFILTER RTM_NEWTFILTER
921dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_DELTFILTER,
93654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
941dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_DELTFILTER RTM_DELTFILTER
951dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_GETTFILTER,
961dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_GETTFILTER RTM_GETTFILTER
971dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_NEWACTION = 48,
98654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
991dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NEWACTION RTM_NEWACTION
1001dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_DELACTION,
1011dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_DELACTION RTM_DELACTION
1021dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_GETACTION,
103654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1041dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_GETACTION RTM_GETACTION
1051dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_NEWPREFIX = 52,
1061dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NEWPREFIX RTM_NEWPREFIX
1071dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_GETMULTICAST = 58,
108654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1091dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_GETMULTICAST RTM_GETMULTICAST
1101dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_GETANYCAST = 62,
1111dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_GETANYCAST RTM_GETANYCAST
1121dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_NEWNEIGHTBL = 64,
113654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1141dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NEWNEIGHTBL RTM_NEWNEIGHTBL
1151dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_GETNEIGHTBL = 66,
1161dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_GETNEIGHTBL RTM_GETNEIGHTBL
1171dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTM_SETNEIGHTBL,
118654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1191dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_SETNEIGHTBL RTM_SETNEIGHTBL
1209163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTM_NEWNDUSEROPT = 68,
1219163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTM_NEWNDUSEROPT RTM_NEWNDUSEROPT
1229163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTM_NEWADDRLABEL = 72,
123654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1249163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTM_NEWADDRLABEL RTM_NEWADDRLABEL
1259163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTM_DELADDRLABEL,
1269163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTM_DELADDRLABEL RTM_DELADDRLABEL
1279163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTM_GETADDRLABEL,
128654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1299163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTM_GETADDRLABEL RTM_GETADDRLABEL
1309163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTM_GETDCB = 78,
1319163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTM_GETDCB RTM_GETDCB
1329163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTM_SETDCB,
133654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1349163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTM_SETDCB RTM_SETDCB
1351dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __RTM_MAX,
1361dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_MAX (((__RTM_MAX + 3) & ~3) - 1)
1371dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
138654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1391dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NR_MSGTYPES (RTM_MAX + 1 - RTM_BASE)
1401dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_NR_FAMILIES (RTM_NR_MSGTYPES >> 2)
1411dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_FAM(cmd) (((cmd) - RTM_BASE) >> 2)
142ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtstruct rtattr {
143654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1441dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned short rta_len;
1451dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned short rta_type;
1461dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
1471dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTA_ALIGNTO 4
148654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1491dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTA_ALIGN(len) ( ((len)+RTA_ALIGNTO-1) & ~(RTA_ALIGNTO-1) )
1501dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTA_OK(rta,len) ((len) >= (int)sizeof(struct rtattr) &&   (rta)->rta_len >= sizeof(struct rtattr) &&   (rta)->rta_len <= (len))
1511dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTA_NEXT(rta,attrlen) ((attrlen) -= RTA_ALIGN((rta)->rta_len),   (struct rtattr*)(((char*)(rta)) + RTA_ALIGN((rta)->rta_len)))
1521dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTA_LENGTH(len) (RTA_ALIGN(sizeof(struct rtattr)) + (len))
153654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1541dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTA_SPACE(len) RTA_ALIGN(RTA_LENGTH(len))
1551dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTA_DATA(rta) ((void*)(((char*)(rta)) + RTA_LENGTH(0)))
1561dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTA_PAYLOAD(rta) ((int)((rta)->rta_len) - RTA_LENGTH(0))
157ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtstruct rtmsg {
158654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1591dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char rtm_family;
1601dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char rtm_dst_len;
1611dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char rtm_src_len;
1621dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char rtm_tos;
163654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1641dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char rtm_table;
1651dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char rtm_protocol;
1661dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char rtm_scope;
1671dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char rtm_type;
168654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1691dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned rtm_flags;
1701dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
171ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtenum {
1721dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTN_UNSPEC,
173654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1741dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTN_UNICAST,
1751dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTN_LOCAL,
1761dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTN_BROADCAST,
1771dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTN_ANYCAST,
178654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1791dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTN_MULTICAST,
1801dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTN_BLACKHOLE,
1811dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTN_UNREACHABLE,
1821dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTN_PROHIBIT,
183654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1841dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTN_THROW,
1851dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTN_NAT,
1861dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTN_XRESOLVE,
1871dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __RTN_MAX
188654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1891dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
1901dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTN_MAX (__RTN_MAX - 1)
1911dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_UNSPEC 0
1921dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_REDIRECT 1
193654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1941dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_KERNEL 2
1951dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_BOOT 3
1961dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_STATIC 4
1971dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_GATED 8
198654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
1991dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_RA 9
2001dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_MRT 10
2011dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_ZEBRA 11
2021dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_BIRD 12
203654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2041dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_DNROUTED 13
2051dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_XORP 14
2061dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTPROT_NTK 15
2079163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTPROT_DHCP 16
208654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtenum rt_scope_t {
2101dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RT_SCOPE_UNIVERSE=0,
2111dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RT_SCOPE_SITE=200,
2121dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RT_SCOPE_LINK=253,
213654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2141dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RT_SCOPE_HOST=254,
2151dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RT_SCOPE_NOWHERE=255
2161dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
2171dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_F_NOTIFY 0x100
218654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2191dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_F_CLONED 0x200
2201dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_F_EQUALIZE 0x400
2211dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_F_PREFIX 0x800
222ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtenum rt_class_t {
223654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2241dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RT_TABLE_UNSPEC=0,
2259163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RT_TABLE_COMPAT=252,
2261dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RT_TABLE_DEFAULT=253,
2271dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RT_TABLE_MAIN=254,
228654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2291dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RT_TABLE_LOCAL=255,
2309163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RT_TABLE_MAX=0xFFFFFFFF
2311dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
232ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtenum rtattr_type_t {
233654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2341dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_UNSPEC,
2351dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_DST,
2361dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_SRC,
2371dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_IIF,
238654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2391dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_OIF,
2401dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_GATEWAY,
2411dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_PRIORITY,
2421dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_PREFSRC,
243654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2441dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_METRICS,
2451dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_MULTIPATH,
2461dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_PROTOINFO,
2471dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_FLOW,
248654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2491dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_CACHEINFO,
2501dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_SESSION,
2511dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTA_MP_ALGO,
2529163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTA_TABLE,
253654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
254ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidt RTA_MARK,
2551dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __RTA_MAX
2561dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
2571dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTA_MAX (__RTA_MAX - 1)
258654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2591dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct rtmsg))))
2601dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTM_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct rtmsg))
261ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtstruct rtnexthop {
2621dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned short rtnh_len;
263654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2641dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char rtnh_flags;
2651dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char rtnh_hops;
2661dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project int rtnh_ifindex;
2671dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
268654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2691dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNH_F_DEAD 1
2701dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNH_F_PERVASIVE 2
2711dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNH_F_ONLINK 4
2721dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNH_ALIGNTO 4
273654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2741dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNH_ALIGN(len) ( ((len)+RTNH_ALIGNTO-1) & ~(RTNH_ALIGNTO-1) )
2751dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNH_OK(rtnh,len) ((rtnh)->rtnh_len >= sizeof(struct rtnexthop) &&   ((int)(rtnh)->rtnh_len) <= (len))
2761dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNH_NEXT(rtnh) ((struct rtnexthop*)(((char*)(rtnh)) + RTNH_ALIGN((rtnh)->rtnh_len)))
2771dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNH_LENGTH(len) (RTNH_ALIGN(sizeof(struct rtnexthop)) + (len))
278654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2791dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNH_SPACE(len) RTNH_ALIGN(RTNH_LENGTH(len))
2801dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNH_DATA(rtnh) ((struct rtattr*)(((char*)(rtnh)) + RTNH_LENGTH(0)))
281ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtstruct rta_cacheinfo {
2821dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 rta_clntref;
283654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2841dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 rta_lastuse;
2851dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __s32 rta_expires;
2861dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 rta_error;
2871dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 rta_used;
288654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2891dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNETLINK_HAVE_PEERINFO 1
2901dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 rta_id;
2911dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 rta_ts;
2921dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 rta_tsage;
293654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2941dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
295ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtenum {
2961dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_UNSPEC,
2971dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_UNSPEC RTAX_UNSPEC
298654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2991dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_LOCK,
3001dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_LOCK RTAX_LOCK
3011dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_MTU,
3021dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_MTU RTAX_MTU
303654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3041dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_WINDOW,
3051dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_WINDOW RTAX_WINDOW
3061dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_RTT,
3071dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_RTT RTAX_RTT
308654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3091dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_RTTVAR,
3101dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_RTTVAR RTAX_RTTVAR
3111dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_SSTHRESH,
3121dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_SSTHRESH RTAX_SSTHRESH
313654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3141dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_CWND,
3151dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_CWND RTAX_CWND
3161dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_ADVMSS,
3171dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_ADVMSS RTAX_ADVMSS
318654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3191dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_REORDERING,
3201dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_REORDERING RTAX_REORDERING
3211dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_HOPLIMIT,
3221dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_HOPLIMIT RTAX_HOPLIMIT
323654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3241dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_INITCWND,
3251dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_INITCWND RTAX_INITCWND
3261dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTAX_FEATURES,
3271dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_FEATURES RTAX_FEATURES
328654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3299163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTAX_RTO_MIN,
3309163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTAX_RTO_MIN RTAX_RTO_MIN
331ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidt RTAX_INITRWND,
332ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidt#define RTAX_INITRWND RTAX_INITRWND
333654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3341dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __RTAX_MAX
3351dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
3361dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_MAX (__RTAX_MAX - 1)
3371dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_FEATURE_ECN 0x00000001
338654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3391dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_FEATURE_SACK 0x00000002
3401dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_FEATURE_TIMESTAMP 0x00000004
3411dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTAX_FEATURE_ALLFRAG 0x00000008
342ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtstruct rta_session {
343654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3441dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u8 proto;
3451dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u8 pad1;
3461dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u16 pad2;
3471dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project union {
348654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3491dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project struct {
3501dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u16 sport;
3511dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u16 dport;
3521dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project } ports;
353654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3541dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project struct {
3551dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u8 type;
3561dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u8 code;
3571dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u16 ident;
358654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3591dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project } icmpt;
3601dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 spi;
3611dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project } u;
3621dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
363654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
364ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtstruct rtgenmsg {
3651dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char rtgen_family;
3661dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
367ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtstruct ifinfomsg {
368654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3691dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char ifi_family;
3701dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char __ifi_pad;
3711dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned short ifi_type;
3721dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project int ifi_index;
373654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3741dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned ifi_flags;
3751dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned ifi_change;
3761dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
377ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtstruct prefixmsg {
378654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3791dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char prefix_family;
3801dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char prefix_pad1;
3811dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned short prefix_pad2;
3821dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project int prefix_ifindex;
383654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3841dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char prefix_type;
3851dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char prefix_len;
3861dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char prefix_flags;
3871dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char prefix_pad3;
388654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3891dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
3901dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectenum
3911dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project{
3921dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project PREFIX_UNSPEC,
393654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3941dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project PREFIX_ADDRESS,
3951dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project PREFIX_CACHEINFO,
3961dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __PREFIX_MAX
3971dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
398654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3991dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define PREFIX_MAX (__PREFIX_MAX - 1)
400ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtstruct prefix_cacheinfo {
4011dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 preferred_time;
4021dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 valid_time;
403654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4041dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
405ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtstruct tcmsg {
4061dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char tcm_family;
4071dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char tcm__pad1;
408654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4091dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned short tcm__pad2;
4101dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project int tcm_ifindex;
4111dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 tcm_handle;
4121dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 tcm_parent;
413654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4141dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __u32 tcm_info;
4151dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
416ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtenum {
4171dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project TCA_UNSPEC,
418654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4191dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project TCA_KIND,
4201dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project TCA_OPTIONS,
4211dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project TCA_STATS,
4221dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project TCA_XSTATS,
423654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4241dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project TCA_RATE,
4251dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project TCA_FCNT,
4261dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project TCA_STATS2,
4279163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat TCA_STAB,
428654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4291dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __TCA_MAX
4301dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
4311dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define TCA_MAX (__TCA_MAX - 1)
4321dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define TCA_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct tcmsg))))
433654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4341dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define TCA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct tcmsg))
435ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtstruct nduseroptmsg {
4369163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat unsigned char nduseropt_family;
4379163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat unsigned char nduseropt_pad1;
438654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4399163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat unsigned short nduseropt_opts_len;
4409163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat int nduseropt_ifindex;
4419163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat __u8 nduseropt_icmp_type;
4429163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat __u8 nduseropt_icmp_code;
443654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4449163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat unsigned short nduseropt_pad2;
4459163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat unsigned int nduseropt_pad3;
4469163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat};
447ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtenum {
448654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4499163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat NDUSEROPT_UNSPEC,
4509163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat NDUSEROPT_SRCADDR,
4519163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat __NDUSEROPT_MAX
4529163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat};
453654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4549163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define NDUSEROPT_MAX (__NDUSEROPT_MAX - 1)
4551dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_LINK 1
4561dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_NOTIFY 2
4571dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_NEIGH 4
458654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4591dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_TC 8
4601dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_IPV4_IFADDR 0x10
4611dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_IPV4_MROUTE 0x20
4621dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_IPV4_ROUTE 0x40
463654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4641dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_IPV4_RULE 0x80
4651dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_IPV6_IFADDR 0x100
4661dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_IPV6_MROUTE 0x200
4671dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_IPV6_ROUTE 0x400
468654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4691dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_IPV6_IFINFO 0x800
4701dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_DECnet_IFADDR 0x1000
4711dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_DECnet_ROUTE 0x4000
4721dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTMGRP_IPV6_PREFIX 0x20000
473654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4741dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectenum rtnetlink_groups {
4751dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_NONE,
4761dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_NONE RTNLGRP_NONE
4771dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_LINK,
478654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4791dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_LINK RTNLGRP_LINK
4801dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_NOTIFY,
4811dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_NOTIFY RTNLGRP_NOTIFY
4821dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_NEIGH,
483654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4841dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_NEIGH RTNLGRP_NEIGH
4851dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_TC,
4861dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_TC RTNLGRP_TC
4871dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_IPV4_IFADDR,
488654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4891dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_IPV4_IFADDR RTNLGRP_IPV4_IFADDR
4901dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_IPV4_MROUTE,
4911dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_IPV4_MROUTE RTNLGRP_IPV4_MROUTE
4921dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_IPV4_ROUTE,
493654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4941dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_IPV4_ROUTE RTNLGRP_IPV4_ROUTE
4951dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_IPV4_RULE,
4961dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_IPV4_RULE RTNLGRP_IPV4_RULE
4971dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_IPV6_IFADDR,
498654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4991dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_IPV6_IFADDR RTNLGRP_IPV6_IFADDR
5001dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_IPV6_MROUTE,
5011dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_IPV6_MROUTE RTNLGRP_IPV6_MROUTE
5021dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_IPV6_ROUTE,
503654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
5041dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_IPV6_ROUTE RTNLGRP_IPV6_ROUTE
5051dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_IPV6_IFINFO,
5061dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_IPV6_IFINFO RTNLGRP_IPV6_IFINFO
5071dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_DECnet_IFADDR,
508654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
5091dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_DECnet_IFADDR RTNLGRP_DECnet_IFADDR
5101dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_NOP2,
5111dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_DECnet_ROUTE,
5121dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_DECnet_ROUTE RTNLGRP_DECnet_ROUTE
513654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
5149163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTNLGRP_DECnet_RULE,
5159163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTNLGRP_DECnet_RULE RTNLGRP_DECnet_RULE
5161dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_NOP4,
5171dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project RTNLGRP_IPV6_PREFIX,
518654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
5191dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_IPV6_PREFIX RTNLGRP_IPV6_PREFIX
5209163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTNLGRP_IPV6_RULE,
5219163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTNLGRP_IPV6_RULE RTNLGRP_IPV6_RULE
5229163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTNLGRP_ND_USEROPT,
523654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
5249163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTNLGRP_ND_USEROPT RTNLGRP_ND_USEROPT
5259163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTNLGRP_PHONET_IFADDR,
5269163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTNLGRP_PHONET_IFADDR RTNLGRP_PHONET_IFADDR
5279163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat RTNLGRP_PHONET_ROUTE,
528654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
5299163872132a3e92f986b1d684badb1dd4482ad8eSan Mehat#define RTNLGRP_PHONET_ROUTE RTNLGRP_PHONET_ROUTE
5301dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __RTNLGRP_MAX
5311dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
5321dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define RTNLGRP_MAX (__RTNLGRP_MAX - 1)
533654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
534ce69c5e62f903e719af080fa03b8e718e294d3baDmitry Shmidtstruct tcamsg {
5351dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char tca_family;
5361dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned char tca__pad1;
5371dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project unsigned short tca__pad2;
538654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
5391dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project};
5401dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define TA_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct tcamsg))))
5411dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define TA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct tcamsg))
5421dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define TCA_ACT_TAB 1
543654325de026a2ca5b76b8b40e576c959d8211fdcBen Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
5441dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define TCAA_MAX 1
5451dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#endif
546