if_arp.h revision 525ce914edf136d2bd02ac8c404d56c52e737f4d
1/****************************************************************************
2 ****************************************************************************
3 ***
4 ***   This header was automatically generated from a Linux kernel header
5 ***   of the same name, to make information necessary for userspace to
6 ***   call into the kernel available to libc.  It contains only constants,
7 ***   structures, and macros generated from the original header, and thus,
8 ***   contains no copyrightable information.
9 ***
10 ***   To edit the content of this header, modify the corresponding
11 ***   source file (e.g. under external/kernel-headers/original/) then
12 ***   run bionic/libc/kernel/tools/update_all.py
13 ***
14 ***   Any manual change here will be lost the next time this script will
15 ***   be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _UAPI_LINUX_IF_ARP_H
20#define _UAPI_LINUX_IF_ARP_H
21#include <linux/netdevice.h>
22#define ARPHRD_NETROM 0
23#define ARPHRD_ETHER 1
24#define ARPHRD_EETHER 2
25#define ARPHRD_AX25 3
26#define ARPHRD_PRONET 4
27#define ARPHRD_CHAOS 5
28#define ARPHRD_IEEE802 6
29#define ARPHRD_ARCNET 7
30#define ARPHRD_APPLETLK 8
31#define ARPHRD_DLCI 15
32#define ARPHRD_ATM 19
33#define ARPHRD_METRICOM 23
34#define ARPHRD_IEEE1394 24
35#define ARPHRD_EUI64 27
36#define ARPHRD_INFINIBAND 32
37#define ARPHRD_SLIP 256
38#define ARPHRD_CSLIP 257
39#define ARPHRD_SLIP6 258
40#define ARPHRD_CSLIP6 259
41#define ARPHRD_RSRVD 260
42#define ARPHRD_ADAPT 264
43#define ARPHRD_ROSE 270
44#define ARPHRD_X25 271
45#define ARPHRD_HWX25 272
46#define ARPHRD_CAN 280
47#define ARPHRD_PPP 512
48#define ARPHRD_CISCO 513
49#define ARPHRD_HDLC ARPHRD_CISCO
50#define ARPHRD_LAPB 516
51#define ARPHRD_DDCMP 517
52#define ARPHRD_RAWHDLC 518
53#define ARPHRD_TUNNEL 768
54#define ARPHRD_TUNNEL6 769
55#define ARPHRD_FRAD 770
56#define ARPHRD_SKIP 771
57#define ARPHRD_LOOPBACK 772
58#define ARPHRD_LOCALTLK 773
59#define ARPHRD_FDDI 774
60#define ARPHRD_BIF 775
61#define ARPHRD_SIT 776
62#define ARPHRD_IPDDP 777
63#define ARPHRD_IPGRE 778
64#define ARPHRD_PIMREG 779
65#define ARPHRD_HIPPI 780
66#define ARPHRD_ASH 781
67#define ARPHRD_ECONET 782
68#define ARPHRD_IRDA 783
69#define ARPHRD_FCPP 784
70#define ARPHRD_FCAL 785
71#define ARPHRD_FCPL 786
72#define ARPHRD_FCFABRIC 787
73#define ARPHRD_IEEE802_TR 800
74#define ARPHRD_IEEE80211 801
75#define ARPHRD_IEEE80211_PRISM 802
76#define ARPHRD_IEEE80211_RADIOTAP 803
77#define ARPHRD_IEEE802154 804
78#define ARPHRD_IEEE802154_MONITOR 805
79#define ARPHRD_PHONET 820
80#define ARPHRD_PHONET_PIPE 821
81#define ARPHRD_CAIF 822
82#define ARPHRD_IP6GRE 823
83#define ARPHRD_NETLINK 824
84#define ARPHRD_6LOWPAN 825
85#define ARPHRD_VSOCKMON 826
86#define ARPHRD_VOID 0xFFFF
87#define ARPHRD_NONE 0xFFFE
88#define ARPOP_REQUEST 1
89#define ARPOP_REPLY 2
90#define ARPOP_RREQUEST 3
91#define ARPOP_RREPLY 4
92#define ARPOP_InREQUEST 8
93#define ARPOP_InREPLY 9
94#define ARPOP_NAK 10
95struct arpreq {
96  struct sockaddr arp_pa;
97  struct sockaddr arp_ha;
98  int arp_flags;
99  struct sockaddr arp_netmask;
100  char arp_dev[16];
101};
102struct arpreq_old {
103  struct sockaddr arp_pa;
104  struct sockaddr arp_ha;
105  int arp_flags;
106  struct sockaddr arp_netmask;
107};
108#define ATF_COM 0x02
109#define ATF_PERM 0x04
110#define ATF_PUBL 0x08
111#define ATF_USETRAILERS 0x10
112#define ATF_NETMASK 0x20
113#define ATF_DONTPUB 0x40
114struct arphdr {
115  __be16 ar_hrd;
116  __be16 ar_pro;
117  unsigned char ar_hln;
118  unsigned char ar_pln;
119  __be16 ar_op;
120};
121#endif
122