Wireshark  4.3.0
The Wireshark network protocol analyzer
arptypes.h
Go to the documentation of this file.
1 
12 #ifndef __ARPTYPES_H__
13 #define __ARPTYPES_H__
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif /* __cplusplus */
18 
19 /* Definitions taken from Linux "linux/if_arp.h" header file, and from
20 
21 
22  */
23 
24 /*
25  * ARP protocol HARDWARE identifiers.
26  *
27  * From
28  *
29  * https://www.iana.org/assignments/arp-parameters/arp-parameters.xhtml#arp-parameters-2
30  *
31  * XXX - ARPHRD_NETROM is from Linux linux/if_arp.h file; 0 is reserved,
32  * probably permanently, by RFC 5494.
33  */
34 #define ARPHRD_NETROM 0 /* from KA9Q: NET/ROM pseudo */
35 #define ARPHRD_ETHER 1 /* Ethernet 10Mbps */
36 #define ARPHRD_EETHER 2 /* Experimental Ethernet */
37 #define ARPHRD_AX25 3 /* AX.25 Level 2 */
38 #define ARPHRD_PRONET 4 /* PROnet token ring */
39 #define ARPHRD_CHAOS 5 /* Chaosnet */
40 #define ARPHRD_IEEE802 6 /* IEEE 802.2 Ethernet/TR/TB */
41 #define ARPHRD_ARCNET 7 /* ARCnet */
42 #define ARPHRD_HYPERCH 8 /* Hyperchannel */
43 #define ARPHRD_LANSTAR 9 /* Lanstar */
44 #define ARPHRD_AUTONET 10 /* Autonet Short Address */
45 #define ARPHRD_LOCALTLK 11 /* Localtalk */
46 #define ARPHRD_LOCALNET 12 /* LocalNet (IBM PCNet/Sytek LocalNET) */
47 #define ARPHRD_ULTRALNK 13 /* Ultra link */
48 #define ARPHRD_SMDS 14 /* SMDS */
49 #define ARPHRD_DLCI 15 /* Frame Relay DLCI */
50 #define ARPHRD_ATM 16 /* ATM */
51 #define ARPHRD_HDLC 17 /* HDLC */
52 #define ARPHRD_FIBREC 18 /* Fibre Channel */
53 #define ARPHRD_ATM2225 19 /* ATM (RFC 2225) */
54 #define ARPHRD_SERIAL 20 /* Serial Line */
55 #define ARPHRD_ATM2 21 /* ATM */
56 #define ARPHRD_MS188220 22 /* MIL-STD-188-220 */
57 #define ARPHRD_METRICOM 23 /* Metricom STRIP */
58 #define ARPHRD_IEEE1394 24 /* IEEE 1394.1995 */
59 #define ARPHRD_MAPOS 25 /* MAPOS */
60 #define ARPHRD_TWINAX 26 /* Twinaxial */
61 #define ARPHRD_EUI_64 27 /* EUI-64 */
62 #define ARPHRD_HIPARP 28 /* HIPARP */
63 #define ARPHRD_IP_ARP_ISO_7816_3 29 /* IP and ARP over ISO 7816-3 */
64 #define ARPHRD_ARPSEC 30 /* ARPSec */
65 #define ARPHRD_IPSEC_TUNNEL 31 /* IPsec tunnel */
66 #define ARPHRD_INFINIBAND 32 /* InfiniBand */
67 #define ARPHRD_TIA_102_PRJ_25_CAI 33 /* TIA-102 Project 25 CAI */
68 #define ARPHRD_WIEGAND_INTERFACE 34 /* Wiegand Interface */
69 #define ARPHRD_PURE_IP 35 /* Pure IP */
70 #define ARPHRD_HW_EXP1 36 /* HW_EXP1 */
71 #define ARPHRD_HFI 37 /* HFI */
72 #define ARPHRD_HW_EXP2 256 /* HW_EXP2 */
73 #define ARPHRD_AETHERNET 257 /* AEthernet */
74 
75 /*
76  * Virtual ARP types for non ARP hardware used in Linux cooked mode,
77  * from Linux linux/if_arp.h file.
78  *
79  * XXX - note that these values already have eaten into the values
80  * registered in the IANA documentation. Should there be separate sets
81  * of values, and separate value_string tables, one solely for ARP
82  * hardware values, and the other with the Linux values, to use with,
83  * for example, Linux cooked capture headers? The values 512 and
84  * above are probably *less* likely to collide.
85  */
86 /*#define ARPHRD_SLIP 256*/
87 /*#define ARPHRD_CSLIP 257 */
88 #define ARPHRD_SLIP6 258
89 #define ARPHRD_CSLIP6 259
90 #define ARPHRD_RSRVD 260 /* Notional KISS type */
91 #define ARPHRD_ADAPT 264
92 #define ARPHRD_ROSE 270
93 #define ARPHRD_X25 271 /* CCITT X.25 */
94 #define ARPHRD_HWX25 272 /* Boards with X.25 in firmware */
95 #define ARPHRD_CAN 280 /* Controller Area Network */
96 
97 #define ARPHRD_PPP 512
98 #define ARPHRD_CISCO 513 /* Cisco HDLC */
99 #define ARPHRD_LAPB 516 /* LAPB */
100 #define ARPHRD_DDCMP 517 /* Digital's DDCMP protocol */
101 #define ARPHRD_RAWHDLC 518 /* Raw HDLC */
102 #define ARPHRD_RAWIP 519 /* Raw IP */
103 
104 #define ARPHRD_TUNNEL 768 /* IPIP tunnel */
105 #define ARPHRD_TUNNEL6 769 /* IP6IP6 tunnel */
106 #define ARPHRD_FRAD 770 /* Frame Relay Access Device */
107 #define ARPHRD_SKIP 771 /* SKIP vif */
108 #define ARPHRD_LOOPBACK 772 /* Loopback */
109 #define ARPHRD_FDDI 774 /* Fiber Distributed Data Interface */
110 #define ARPHRD_BIF 775 /* AP1000 BIF */
111 #define ARPHRD_SIT 776 /* sit0 device - IPv6-in-IPv4 */
112 #define ARPHRD_IPDDP 777 /* IP over DDP tunneller */
113 #define ARPHRD_IPGRE 778 /* GRE over IP */
114 #define ARPHRD_PIMREG 779 /* PIMSM register interface */
115 #define ARPHRD_HIPPI 780 /* High Performance Parallel Interface */
116 #define ARPHRD_ASH 781 /* Nexus 64Mbps Ash */
117 #define ARPHRD_ECONET 782 /* Acorn Econet */
118 #define ARPHRD_IRDA 783 /* Linux-IrDA */
119 /* ARP works differently on different FC media .. so */
120 #define ARPHRD_FCPP 784 /* Point to point fibrechannel */
121 #define ARPHRD_FCAL 785 /* Fibrechannel arbitrated loop */
122 #define ARPHRD_FCPL 786 /* Fibrechannel public loop */
123 #define ARPHRD_FCFABRIC 787 /* Fibrechannel fabric */
124  /* 787->799 reserved for fibrechannel media types */
125 #define ARPHRD_IEEE802_TR 800 /* Magic type ident for TR */
126 #define ARPHRD_IEEE80211 801 /* IEEE 802.11 */
127 #define ARPHRD_IEEE80211_PRISM 802 /* IEEE 802.11 + Prism2 header */
128 #define ARPHRD_IEEE80211_RADIOTAP 803 /* IEEE 802.11 + radiotap header */
129 #define ARPHRD_IEEE802154 804
130 #define ARPHRD_IEEE802154_MONITOR 805 /* IEEE 802.15.4 network monitor */
131 
132 #define ARPHRD_PHONET 820 /* PhoNet media type */
133 #define ARPHRD_PHONET_PIPE 821 /* PhoNet pipe header */
134 #define ARPHRD_CAIF 822 /* CAIF media type */
135 #define ARPHRD_IP6GRE 823 /* GRE over IPv6 */
136 #define ARPHRD_NETLINK 824 /* netlink */
137 #define ARPHRD_6LOWPAN 825 /* IPv6 over LoWPAN */
138 #define ARPHRD_VSOCKMON 826 /* Vsock monitor header */
139 
140 #define ARPHRD_VOID 0xFFFF /* Void type, nothing is known */
141 #define ARPHRD_NONE 0xFFFE /* zero header length */
142 
143 #ifdef __cplusplus
144 }
145 #endif /* __cplusplus */
146 
147 #endif /* arptypes.h */