1 /*
2  * This file is auto-generated. Modifications will be lost.
3  *
4  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5  * for more information.
6  */
7 #ifndef __LINUX_NEIGHBOUR_H
8 #define __LINUX_NEIGHBOUR_H
9 #include <linux/types.h>
10 #include <linux/netlink.h>
11 struct ndmsg {
12   __u8 ndm_family;
13   __u8 ndm_pad1;
14   __u16 ndm_pad2;
15   __s32 ndm_ifindex;
16   __u16 ndm_state;
17   __u8 ndm_flags;
18   __u8 ndm_type;
19 };
20 enum {
21   NDA_UNSPEC,
22   NDA_DST,
23   NDA_LLADDR,
24   NDA_CACHEINFO,
25   NDA_PROBES,
26   NDA_VLAN,
27   NDA_PORT,
28   NDA_VNI,
29   NDA_IFINDEX,
30   NDA_MASTER,
31   NDA_LINK_NETNSID,
32   NDA_SRC_VNI,
33   NDA_PROTOCOL,
34   NDA_NH_ID,
35   NDA_FDB_EXT_ATTRS,
36   NDA_FLAGS_EXT,
37   NDA_NDM_STATE_MASK,
38   NDA_NDM_FLAGS_MASK,
39   __NDA_MAX
40 };
41 #define NDA_MAX (__NDA_MAX - 1)
42 #define NTF_USE (1 << 0)
43 #define NTF_SELF (1 << 1)
44 #define NTF_MASTER (1 << 2)
45 #define NTF_PROXY (1 << 3)
46 #define NTF_EXT_LEARNED (1 << 4)
47 #define NTF_OFFLOADED (1 << 5)
48 #define NTF_STICKY (1 << 6)
49 #define NTF_ROUTER (1 << 7)
50 #define NTF_EXT_MANAGED (1 << 0)
51 #define NTF_EXT_LOCKED (1 << 1)
52 #define NUD_INCOMPLETE 0x01
53 #define NUD_REACHABLE 0x02
54 #define NUD_STALE 0x04
55 #define NUD_DELAY 0x08
56 #define NUD_PROBE 0x10
57 #define NUD_FAILED 0x20
58 #define NUD_NOARP 0x40
59 #define NUD_PERMANENT 0x80
60 #define NUD_NONE 0x00
61 struct nda_cacheinfo {
62   __u32 ndm_confirmed;
63   __u32 ndm_used;
64   __u32 ndm_updated;
65   __u32 ndm_refcnt;
66 };
67 struct ndt_stats {
68   __u64 ndts_allocs;
69   __u64 ndts_destroys;
70   __u64 ndts_hash_grows;
71   __u64 ndts_res_failed;
72   __u64 ndts_lookups;
73   __u64 ndts_hits;
74   __u64 ndts_rcv_probes_mcast;
75   __u64 ndts_rcv_probes_ucast;
76   __u64 ndts_periodic_gc_runs;
77   __u64 ndts_forced_gc_runs;
78   __u64 ndts_table_fulls;
79 };
80 enum {
81   NDTPA_UNSPEC,
82   NDTPA_IFINDEX,
83   NDTPA_REFCNT,
84   NDTPA_REACHABLE_TIME,
85   NDTPA_BASE_REACHABLE_TIME,
86   NDTPA_RETRANS_TIME,
87   NDTPA_GC_STALETIME,
88   NDTPA_DELAY_PROBE_TIME,
89   NDTPA_QUEUE_LEN,
90   NDTPA_APP_PROBES,
91   NDTPA_UCAST_PROBES,
92   NDTPA_MCAST_PROBES,
93   NDTPA_ANYCAST_DELAY,
94   NDTPA_PROXY_DELAY,
95   NDTPA_PROXY_QLEN,
96   NDTPA_LOCKTIME,
97   NDTPA_QUEUE_LENBYTES,
98   NDTPA_MCAST_REPROBES,
99   NDTPA_PAD,
100   NDTPA_INTERVAL_PROBE_TIME_MS,
101   __NDTPA_MAX
102 };
103 #define NDTPA_MAX (__NDTPA_MAX - 1)
104 struct ndtmsg {
105   __u8 ndtm_family;
106   __u8 ndtm_pad1;
107   __u16 ndtm_pad2;
108 };
109 struct ndt_config {
110   __u16 ndtc_key_len;
111   __u16 ndtc_entry_size;
112   __u32 ndtc_entries;
113   __u32 ndtc_last_flush;
114   __u32 ndtc_last_rand;
115   __u32 ndtc_hash_rnd;
116   __u32 ndtc_hash_mask;
117   __u32 ndtc_hash_chain_gc;
118   __u32 ndtc_proxy_qlen;
119 };
120 enum {
121   NDTA_UNSPEC,
122   NDTA_NAME,
123   NDTA_THRESH1,
124   NDTA_THRESH2,
125   NDTA_THRESH3,
126   NDTA_CONFIG,
127   NDTA_PARMS,
128   NDTA_STATS,
129   NDTA_GC_INTERVAL,
130   NDTA_PAD,
131   __NDTA_MAX
132 };
133 #define NDTA_MAX (__NDTA_MAX - 1)
134 enum {
135   FDB_NOTIFY_BIT = (1 << 0),
136   FDB_NOTIFY_INACTIVE_BIT = (1 << 1)
137 };
138 enum {
139   NFEA_UNSPEC,
140   NFEA_ACTIVITY_NOTIFY,
141   NFEA_DONT_REFRESH,
142   __NFEA_MAX
143 };
144 #define NFEA_MAX (__NFEA_MAX - 1)
145 #endif
146