source: EcnlProtoTool/trunk/musl-1.1.12/include/net/if_arp.h@ 321

Last change on this file since 321 was 321, checked in by coas-nagasima, 7 years ago

文字コードを設定

  • Property svn:eol-style set to native
  • Property svn:mime-type set to text/x-chdr;charset=UTF-8
File size: 2.8 KB
Line 
1/* Nonstandard header */
2#ifndef _NET_IF_ARP_H
3#define _NET_IF_ARP_H
4#ifdef __cplusplus
5extern "C" {
6#endif
7
8#include <inttypes.h>
9#include <sys/types.h>
10#include <sys/socket.h>
11
12#define MAX_ADDR_LEN 7
13
14#define ARPOP_REQUEST 1
15#define ARPOP_REPLY 2
16#define ARPOP_RREQUEST 3
17#define ARPOP_RREPLY 4
18#define ARPOP_InREQUEST 8
19#define ARPOP_InREPLY 9
20#define ARPOP_NAK 10
21
22struct arphdr {
23 uint16_t ar_hrd;
24 uint16_t ar_pro;
25 uint8_t ar_hln;
26 uint8_t ar_pln;
27 uint16_t ar_op;
28};
29
30
31#define ARPHRD_NETROM 0
32#define ARPHRD_ETHER 1
33#define ARPHRD_EETHER 2
34#define ARPHRD_AX25 3
35#define ARPHRD_PRONET 4
36#define ARPHRD_CHAOS 5
37#define ARPHRD_IEEE802 6
38#define ARPHRD_ARCNET 7
39#define ARPHRD_APPLETLK 8
40#define ARPHRD_DLCI 15
41#define ARPHRD_ATM 19
42#define ARPHRD_METRICOM 23
43#define ARPHRD_IEEE1394 24
44#define ARPHRD_EUI64 27
45#define ARPHRD_INFINIBAND 32
46#define ARPHRD_SLIP 256
47#define ARPHRD_CSLIP 257
48#define ARPHRD_SLIP6 258
49#define ARPHRD_CSLIP6 259
50#define ARPHRD_RSRVD 260
51#define ARPHRD_ADAPT 264
52#define ARPHRD_ROSE 270
53#define ARPHRD_X25 271
54#define ARPHRD_HWX25 272
55#define ARPHRD_CAN 280
56#define ARPHRD_PPP 512
57#define ARPHRD_CISCO 513
58#define ARPHRD_HDLC ARPHRD_CISCO
59#define ARPHRD_LAPB 516
60#define ARPHRD_DDCMP 517
61#define ARPHRD_RAWHDLC 518
62
63#define ARPHRD_TUNNEL 768
64#define ARPHRD_TUNNEL6 769
65#define ARPHRD_FRAD 770
66#define ARPHRD_SKIP 771
67#define ARPHRD_LOOPBACK 772
68#define ARPHRD_LOCALTLK 773
69#define ARPHRD_FDDI 774
70#define ARPHRD_BIF 775
71#define ARPHRD_SIT 776
72#define ARPHRD_IPDDP 777
73#define ARPHRD_IPGRE 778
74#define ARPHRD_PIMREG 779
75#define ARPHRD_HIPPI 780
76#define ARPHRD_ASH 781
77#define ARPHRD_ECONET 782
78#define ARPHRD_IRDA 783
79#define ARPHRD_FCPP 784
80#define ARPHRD_FCAL 785
81#define ARPHRD_FCPL 786
82#define ARPHRD_FCFABRIC 787
83#define ARPHRD_IEEE802_TR 800
84#define ARPHRD_IEEE80211 801
85#define ARPHRD_IEEE80211_PRISM 802
86#define ARPHRD_IEEE80211_RADIOTAP 803
87#define ARPHRD_IEEE802154 804
88#define ARPHRD_IEEE802154_MONITOR 805
89#define ARPHRD_PHONET 820
90#define ARPHRD_PHONET_PIPE 821
91#define ARPHRD_CAIF 822
92#define ARPHRD_IP6GRE 823
93#define ARPHRD_NETLINK 824
94
95#define ARPHRD_VOID 0xFFFF
96#define ARPHRD_NONE 0xFFFE
97
98struct arpreq {
99 struct sockaddr arp_pa;
100 struct sockaddr arp_ha;
101 int arp_flags;
102 struct sockaddr arp_netmask;
103 char arp_dev[16];
104};
105
106struct arpreq_old {
107 struct sockaddr arp_pa;
108 struct sockaddr arp_ha;
109 int arp_flags;
110 struct sockaddr arp_netmask;
111};
112
113#define ATF_COM 0x02
114#define ATF_PERM 0x04
115#define ATF_PUBL 0x08
116#define ATF_USETRAILERS 0x10
117#define ATF_NETMASK 0x20
118#define ATF_DONTPUB 0x40
119#define ATF_MAGIC 0x80
120
121#define ARPD_UPDATE 0x01
122#define ARPD_LOOKUP 0x02
123#define ARPD_FLUSH 0x03
124
125struct arpd_request {
126 unsigned short req;
127 uint32_t ip;
128 unsigned long dev;
129 unsigned long stamp;
130 unsigned long updated;
131 unsigned char ha[MAX_ADDR_LEN];
132};
133
134
135
136#ifdef __cplusplus
137}
138#endif
139#endif
Note: See TracBrowser for help on using the repository browser.