xref: /aosp_15_r20/prebuilts/build-tools/sysroots/arm-unknown-linux-musleabihf/include/linux/if.h (revision cda5da8d549138a6648c5ee6d7a49cf8f4a657be)
1*cda5da8dSAndroid Build Coastguard Worker /*
2*cda5da8dSAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*cda5da8dSAndroid Build Coastguard Worker  *
4*cda5da8dSAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*cda5da8dSAndroid Build Coastguard Worker  * for more information.
6*cda5da8dSAndroid Build Coastguard Worker  */
7*cda5da8dSAndroid Build Coastguard Worker #ifndef _LINUX_IF_H
8*cda5da8dSAndroid Build Coastguard Worker #define _LINUX_IF_H
9*cda5da8dSAndroid Build Coastguard Worker #include <linux/libc-compat.h>
10*cda5da8dSAndroid Build Coastguard Worker #include <linux/types.h>
11*cda5da8dSAndroid Build Coastguard Worker #include <linux/socket.h>
12*cda5da8dSAndroid Build Coastguard Worker #include <linux/compiler.h>
13*cda5da8dSAndroid Build Coastguard Worker #include <sys/socket.h>
14*cda5da8dSAndroid Build Coastguard Worker #if __UAPI_DEF_IF_IFNAMSIZ
15*cda5da8dSAndroid Build Coastguard Worker #define IFNAMSIZ 16
16*cda5da8dSAndroid Build Coastguard Worker #endif
17*cda5da8dSAndroid Build Coastguard Worker #define IFALIASZ 256
18*cda5da8dSAndroid Build Coastguard Worker #define ALTIFNAMSIZ 128
19*cda5da8dSAndroid Build Coastguard Worker #include <linux/hdlc/ioctl.h>
20*cda5da8dSAndroid Build Coastguard Worker #if __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO != 0 || __UAPI_DEF_IF_NET_DEVICE_FLAGS != 0
21*cda5da8dSAndroid Build Coastguard Worker enum net_device_flags {
22*cda5da8dSAndroid Build Coastguard Worker #if __UAPI_DEF_IF_NET_DEVICE_FLAGS
23*cda5da8dSAndroid Build Coastguard Worker   IFF_UP = 1 << 0,
24*cda5da8dSAndroid Build Coastguard Worker   IFF_BROADCAST = 1 << 1,
25*cda5da8dSAndroid Build Coastguard Worker   IFF_DEBUG = 1 << 2,
26*cda5da8dSAndroid Build Coastguard Worker   IFF_LOOPBACK = 1 << 3,
27*cda5da8dSAndroid Build Coastguard Worker   IFF_POINTOPOINT = 1 << 4,
28*cda5da8dSAndroid Build Coastguard Worker   IFF_NOTRAILERS = 1 << 5,
29*cda5da8dSAndroid Build Coastguard Worker   IFF_RUNNING = 1 << 6,
30*cda5da8dSAndroid Build Coastguard Worker   IFF_NOARP = 1 << 7,
31*cda5da8dSAndroid Build Coastguard Worker   IFF_PROMISC = 1 << 8,
32*cda5da8dSAndroid Build Coastguard Worker   IFF_ALLMULTI = 1 << 9,
33*cda5da8dSAndroid Build Coastguard Worker   IFF_MASTER = 1 << 10,
34*cda5da8dSAndroid Build Coastguard Worker   IFF_SLAVE = 1 << 11,
35*cda5da8dSAndroid Build Coastguard Worker   IFF_MULTICAST = 1 << 12,
36*cda5da8dSAndroid Build Coastguard Worker   IFF_PORTSEL = 1 << 13,
37*cda5da8dSAndroid Build Coastguard Worker   IFF_AUTOMEDIA = 1 << 14,
38*cda5da8dSAndroid Build Coastguard Worker   IFF_DYNAMIC = 1 << 15,
39*cda5da8dSAndroid Build Coastguard Worker #endif
40*cda5da8dSAndroid Build Coastguard Worker #if __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO
41*cda5da8dSAndroid Build Coastguard Worker   IFF_LOWER_UP = 1 << 16,
42*cda5da8dSAndroid Build Coastguard Worker   IFF_DORMANT = 1 << 17,
43*cda5da8dSAndroid Build Coastguard Worker   IFF_ECHO = 1 << 18,
44*cda5da8dSAndroid Build Coastguard Worker #endif
45*cda5da8dSAndroid Build Coastguard Worker };
46*cda5da8dSAndroid Build Coastguard Worker #endif
47*cda5da8dSAndroid Build Coastguard Worker #if __UAPI_DEF_IF_NET_DEVICE_FLAGS
48*cda5da8dSAndroid Build Coastguard Worker #define IFF_UP IFF_UP
49*cda5da8dSAndroid Build Coastguard Worker #define IFF_BROADCAST IFF_BROADCAST
50*cda5da8dSAndroid Build Coastguard Worker #define IFF_DEBUG IFF_DEBUG
51*cda5da8dSAndroid Build Coastguard Worker #define IFF_LOOPBACK IFF_LOOPBACK
52*cda5da8dSAndroid Build Coastguard Worker #define IFF_POINTOPOINT IFF_POINTOPOINT
53*cda5da8dSAndroid Build Coastguard Worker #define IFF_NOTRAILERS IFF_NOTRAILERS
54*cda5da8dSAndroid Build Coastguard Worker #define IFF_RUNNING IFF_RUNNING
55*cda5da8dSAndroid Build Coastguard Worker #define IFF_NOARP IFF_NOARP
56*cda5da8dSAndroid Build Coastguard Worker #define IFF_PROMISC IFF_PROMISC
57*cda5da8dSAndroid Build Coastguard Worker #define IFF_ALLMULTI IFF_ALLMULTI
58*cda5da8dSAndroid Build Coastguard Worker #define IFF_MASTER IFF_MASTER
59*cda5da8dSAndroid Build Coastguard Worker #define IFF_SLAVE IFF_SLAVE
60*cda5da8dSAndroid Build Coastguard Worker #define IFF_MULTICAST IFF_MULTICAST
61*cda5da8dSAndroid Build Coastguard Worker #define IFF_PORTSEL IFF_PORTSEL
62*cda5da8dSAndroid Build Coastguard Worker #define IFF_AUTOMEDIA IFF_AUTOMEDIA
63*cda5da8dSAndroid Build Coastguard Worker #define IFF_DYNAMIC IFF_DYNAMIC
64*cda5da8dSAndroid Build Coastguard Worker #endif
65*cda5da8dSAndroid Build Coastguard Worker #if __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO
66*cda5da8dSAndroid Build Coastguard Worker #define IFF_LOWER_UP IFF_LOWER_UP
67*cda5da8dSAndroid Build Coastguard Worker #define IFF_DORMANT IFF_DORMANT
68*cda5da8dSAndroid Build Coastguard Worker #define IFF_ECHO IFF_ECHO
69*cda5da8dSAndroid Build Coastguard Worker #endif
70*cda5da8dSAndroid Build Coastguard Worker #define IFF_VOLATILE (IFF_LOOPBACK | IFF_POINTOPOINT | IFF_BROADCAST | IFF_ECHO | IFF_MASTER | IFF_SLAVE | IFF_RUNNING | IFF_LOWER_UP | IFF_DORMANT)
71*cda5da8dSAndroid Build Coastguard Worker #define IF_GET_IFACE 0x0001
72*cda5da8dSAndroid Build Coastguard Worker #define IF_GET_PROTO 0x0002
73*cda5da8dSAndroid Build Coastguard Worker #define IF_IFACE_V35 0x1000
74*cda5da8dSAndroid Build Coastguard Worker #define IF_IFACE_V24 0x1001
75*cda5da8dSAndroid Build Coastguard Worker #define IF_IFACE_X21 0x1002
76*cda5da8dSAndroid Build Coastguard Worker #define IF_IFACE_T1 0x1003
77*cda5da8dSAndroid Build Coastguard Worker #define IF_IFACE_E1 0x1004
78*cda5da8dSAndroid Build Coastguard Worker #define IF_IFACE_SYNC_SERIAL 0x1005
79*cda5da8dSAndroid Build Coastguard Worker #define IF_IFACE_X21D 0x1006
80*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_HDLC 0x2000
81*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_PPP 0x2001
82*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_CISCO 0x2002
83*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_FR 0x2003
84*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_FR_ADD_PVC 0x2004
85*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_FR_DEL_PVC 0x2005
86*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_X25 0x2006
87*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_HDLC_ETH 0x2007
88*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_FR_ADD_ETH_PVC 0x2008
89*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_FR_DEL_ETH_PVC 0x2009
90*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_FR_PVC 0x200A
91*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_FR_ETH_PVC 0x200B
92*cda5da8dSAndroid Build Coastguard Worker #define IF_PROTO_RAW 0x200C
93*cda5da8dSAndroid Build Coastguard Worker enum {
94*cda5da8dSAndroid Build Coastguard Worker   IF_OPER_UNKNOWN,
95*cda5da8dSAndroid Build Coastguard Worker   IF_OPER_NOTPRESENT,
96*cda5da8dSAndroid Build Coastguard Worker   IF_OPER_DOWN,
97*cda5da8dSAndroid Build Coastguard Worker   IF_OPER_LOWERLAYERDOWN,
98*cda5da8dSAndroid Build Coastguard Worker   IF_OPER_TESTING,
99*cda5da8dSAndroid Build Coastguard Worker   IF_OPER_DORMANT,
100*cda5da8dSAndroid Build Coastguard Worker   IF_OPER_UP,
101*cda5da8dSAndroid Build Coastguard Worker };
102*cda5da8dSAndroid Build Coastguard Worker enum {
103*cda5da8dSAndroid Build Coastguard Worker   IF_LINK_MODE_DEFAULT,
104*cda5da8dSAndroid Build Coastguard Worker   IF_LINK_MODE_DORMANT,
105*cda5da8dSAndroid Build Coastguard Worker   IF_LINK_MODE_TESTING,
106*cda5da8dSAndroid Build Coastguard Worker };
107*cda5da8dSAndroid Build Coastguard Worker #if __UAPI_DEF_IF_IFMAP
108*cda5da8dSAndroid Build Coastguard Worker struct ifmap {
109*cda5da8dSAndroid Build Coastguard Worker   unsigned long mem_start;
110*cda5da8dSAndroid Build Coastguard Worker   unsigned long mem_end;
111*cda5da8dSAndroid Build Coastguard Worker   unsigned short base_addr;
112*cda5da8dSAndroid Build Coastguard Worker   unsigned char irq;
113*cda5da8dSAndroid Build Coastguard Worker   unsigned char dma;
114*cda5da8dSAndroid Build Coastguard Worker   unsigned char port;
115*cda5da8dSAndroid Build Coastguard Worker };
116*cda5da8dSAndroid Build Coastguard Worker #endif
117*cda5da8dSAndroid Build Coastguard Worker struct if_settings {
118*cda5da8dSAndroid Build Coastguard Worker   unsigned int type;
119*cda5da8dSAndroid Build Coastguard Worker   unsigned int size;
120*cda5da8dSAndroid Build Coastguard Worker   union {
121*cda5da8dSAndroid Build Coastguard Worker     raw_hdlc_proto  * raw_hdlc;
122*cda5da8dSAndroid Build Coastguard Worker     cisco_proto  * cisco;
123*cda5da8dSAndroid Build Coastguard Worker     fr_proto  * fr;
124*cda5da8dSAndroid Build Coastguard Worker     fr_proto_pvc  * fr_pvc;
125*cda5da8dSAndroid Build Coastguard Worker     fr_proto_pvc_info  * fr_pvc_info;
126*cda5da8dSAndroid Build Coastguard Worker     x25_hdlc_proto  * x25;
127*cda5da8dSAndroid Build Coastguard Worker     sync_serial_settings  * sync;
128*cda5da8dSAndroid Build Coastguard Worker     te1_settings  * te1;
129*cda5da8dSAndroid Build Coastguard Worker   } ifs_ifsu;
130*cda5da8dSAndroid Build Coastguard Worker };
131*cda5da8dSAndroid Build Coastguard Worker #if __UAPI_DEF_IF_IFREQ
132*cda5da8dSAndroid Build Coastguard Worker struct ifreq {
133*cda5da8dSAndroid Build Coastguard Worker #define IFHWADDRLEN 6
134*cda5da8dSAndroid Build Coastguard Worker   union {
135*cda5da8dSAndroid Build Coastguard Worker     char ifrn_name[IFNAMSIZ];
136*cda5da8dSAndroid Build Coastguard Worker   } ifr_ifrn;
137*cda5da8dSAndroid Build Coastguard Worker   union {
138*cda5da8dSAndroid Build Coastguard Worker     struct sockaddr ifru_addr;
139*cda5da8dSAndroid Build Coastguard Worker     struct sockaddr ifru_dstaddr;
140*cda5da8dSAndroid Build Coastguard Worker     struct sockaddr ifru_broadaddr;
141*cda5da8dSAndroid Build Coastguard Worker     struct sockaddr ifru_netmask;
142*cda5da8dSAndroid Build Coastguard Worker     struct sockaddr ifru_hwaddr;
143*cda5da8dSAndroid Build Coastguard Worker     short ifru_flags;
144*cda5da8dSAndroid Build Coastguard Worker     int ifru_ivalue;
145*cda5da8dSAndroid Build Coastguard Worker     int ifru_mtu;
146*cda5da8dSAndroid Build Coastguard Worker     struct ifmap ifru_map;
147*cda5da8dSAndroid Build Coastguard Worker     char ifru_slave[IFNAMSIZ];
148*cda5da8dSAndroid Build Coastguard Worker     char ifru_newname[IFNAMSIZ];
149*cda5da8dSAndroid Build Coastguard Worker     void  * ifru_data;
150*cda5da8dSAndroid Build Coastguard Worker     struct if_settings ifru_settings;
151*cda5da8dSAndroid Build Coastguard Worker   } ifr_ifru;
152*cda5da8dSAndroid Build Coastguard Worker };
153*cda5da8dSAndroid Build Coastguard Worker #endif
154*cda5da8dSAndroid Build Coastguard Worker #define ifr_name ifr_ifrn.ifrn_name
155*cda5da8dSAndroid Build Coastguard Worker #define ifr_hwaddr ifr_ifru.ifru_hwaddr
156*cda5da8dSAndroid Build Coastguard Worker #define ifr_addr ifr_ifru.ifru_addr
157*cda5da8dSAndroid Build Coastguard Worker #define ifr_dstaddr ifr_ifru.ifru_dstaddr
158*cda5da8dSAndroid Build Coastguard Worker #define ifr_broadaddr ifr_ifru.ifru_broadaddr
159*cda5da8dSAndroid Build Coastguard Worker #define ifr_netmask ifr_ifru.ifru_netmask
160*cda5da8dSAndroid Build Coastguard Worker #define ifr_flags ifr_ifru.ifru_flags
161*cda5da8dSAndroid Build Coastguard Worker #define ifr_metric ifr_ifru.ifru_ivalue
162*cda5da8dSAndroid Build Coastguard Worker #define ifr_mtu ifr_ifru.ifru_mtu
163*cda5da8dSAndroid Build Coastguard Worker #define ifr_map ifr_ifru.ifru_map
164*cda5da8dSAndroid Build Coastguard Worker #define ifr_slave ifr_ifru.ifru_slave
165*cda5da8dSAndroid Build Coastguard Worker #define ifr_data ifr_ifru.ifru_data
166*cda5da8dSAndroid Build Coastguard Worker #define ifr_ifindex ifr_ifru.ifru_ivalue
167*cda5da8dSAndroid Build Coastguard Worker #define ifr_bandwidth ifr_ifru.ifru_ivalue
168*cda5da8dSAndroid Build Coastguard Worker #define ifr_qlen ifr_ifru.ifru_ivalue
169*cda5da8dSAndroid Build Coastguard Worker #define ifr_newname ifr_ifru.ifru_newname
170*cda5da8dSAndroid Build Coastguard Worker #define ifr_settings ifr_ifru.ifru_settings
171*cda5da8dSAndroid Build Coastguard Worker #if __UAPI_DEF_IF_IFCONF
172*cda5da8dSAndroid Build Coastguard Worker struct ifconf {
173*cda5da8dSAndroid Build Coastguard Worker   int ifc_len;
174*cda5da8dSAndroid Build Coastguard Worker   union {
175*cda5da8dSAndroid Build Coastguard Worker     char  * ifcu_buf;
176*cda5da8dSAndroid Build Coastguard Worker     struct ifreq  * ifcu_req;
177*cda5da8dSAndroid Build Coastguard Worker   } ifc_ifcu;
178*cda5da8dSAndroid Build Coastguard Worker };
179*cda5da8dSAndroid Build Coastguard Worker #endif
180*cda5da8dSAndroid Build Coastguard Worker #define ifc_buf ifc_ifcu.ifcu_buf
181*cda5da8dSAndroid Build Coastguard Worker #define ifc_req ifc_ifcu.ifcu_req
182*cda5da8dSAndroid Build Coastguard Worker #endif
183