WAND Trace processing  4.0.5
libtrace_arphrd.h
1 /*
2  *
3  * Copyright (c) 2007-2016 The University of Waikato, Hamilton, New Zealand.
4  * All rights reserved.
5  *
6  * This file is part of libtrace.
7  *
8  * This code has been developed by the University of Waikato WAND
9  * research group. For further information please see http://www.wand.net.nz/
10  *
11  * libtrace is free software; you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License as published by
13  * the Free Software Foundation; either version 3 of the License, or
14  * (at your option) any later version.
15  *
16  * libtrace is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU Lesser General Public License for more details.
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * along with this program. If not, see <http://www.gnu.org/licenses/>.
23  *
24  *
25  */
26 #ifndef LIBTRACE_ARPHRD_H_
27 #define LIBTRACE_ARPHRD_H_
28 
29 /* This is just a copy, paste and rename job from net/if_arp.h
30  *
31  * Unfortunately not all systems (MAC OS X!!) have all of the ARPHRD types
32  * defined in their version of net/if_arp.h so, as per usual, we have to
33  * include our own for portability.
34  */
35 
36 /* ARP protocol HARDWARE identifiers. */
37 #define LIBTRACE_ARPHRD_NETROM 0 /* From KA9Q: NET/ROM pseudo. */
38 #define LIBTRACE_ARPHRD_ETHER 1 /* Ethernet 10/100Mbps. */
39 #define LIBTRACE_ARPHRD_EETHER 2 /* Experimental Ethernet. */
40 #define LIBTRACE_ARPHRD_AX25 3 /* AX.25 Level 2. */
41 #define LIBTRACE_ARPHRD_PRONET 4 /* PROnet token ring. */
42 #define LIBTRACE_ARPHRD_CHAOS 5 /* Chaosnet. */
43 #define LIBTRACE_ARPHRD_IEEE802 6 /* IEEE 802.2 Ethernet/TR/TB. */
44 #define LIBTRACE_ARPHRD_ARCNET 7 /* ARCnet. */
45 #define LIBTRACE_ARPHRD_APPLETLK 8 /* APPLEtalk. */
46 #define LIBTRACE_ARPHRD_DLCI 15 /* Frame Relay DLCI. */
47 #define LIBTRACE_ARPHRD_ATM 19 /* ATM. */
48 #define LIBTRACE_ARPHRD_METRICOM 23 /* Metricom STRIP (new IANA id). */
49 #define LIBTRACE_ARPHRD_IEEE1394 24 /* IEEE 1394 IPv4 - RFC 2734. */
50 #define LIBTRACE_ARPHRD_EUI64 27 /* EUI-64. */
51 #define LIBTRACE_ARPHRD_INFINIBAND 32 /* InfiniBand. */
52 
53 /* Dummy types for non ARP hardware */
54 #define LIBTRACE_ARPHRD_SLIP 256
55 #define LIBTRACE_ARPHRD_CSLIP 257
56 #define LIBTRACE_ARPHRD_SLIP6 258
57 #define LIBTRACE_ARPHRD_CSLIP6 259
58 #define LIBTRACE_ARPHRD_RSRVD 260 /* Notional KISS type. */
59 #define LIBTRACE_ARPHRD_ADAPT 264
60 #define LIBTRACE_ARPHRD_ROSE 270
61 #define LIBTRACE_ARPHRD_X25 271 /* CCITT X.25. */
62 #define LIBTRACE_ARPHRD_HWX25 272 /* Boards with X.25 in firmware. */
63 #define LIBTRACE_ARPHRD_PPP 512
64 #define LIBTRACE_ARPHRD_CISCO 513 /* Cisco HDLC. */
65 #define LIBTRACE_ARPHRD_HDLC LIBTRACE_ARPHRD_CISCO
66 #define LIBTRACE_ARPHRD_LAPB 516 /* LAPB. */
67 #define LIBTRACE_ARPHRD_DDCMP 517 /* Digital's DDCMP. */
68 #define LIBTRACE_ARPHRD_RAWHDLC 518 /* Raw HDLC. */
69 #define LIBTRACE_ARPHRD_TUNNEL 768 /* IPIP tunnel. */
70 #define LIBTRACE_ARPHRD_TUNNEL6 769 /* IPIP6 tunnel. */
71 #define LIBTRACE_ARPHRD_FRAD 770 /* Frame Relay Access Device. */
72 #define LIBTRACE_ARPHRD_SKIP 771 /* SKIP vif. */
73 #define LIBTRACE_ARPHRD_LOOPBACK 772 /* Loopback device. */
74 #define LIBTRACE_ARPHRD_LOCALTLK 773 /* Localtalk device. */
75 #define LIBTRACE_ARPHRD_FDDI 774 /* Fiber Distributed Data Interface. */
76 #define LIBTRACE_ARPHRD_BIF 775 /* AP1000 BIF. */
77 #define LIBTRACE_ARPHRD_SIT 776 /* sit0 device - IPv6-in-IPv4. */
78 #define LIBTRACE_ARPHRD_IPDDP 777 /* IP-in-DDP tunnel. */
79 #define LIBTRACE_ARPHRD_IPGRE 778 /* GRE over IP. */
80 #define LIBTRACE_ARPHRD_PIMREG 779 /* PIMSM register interface. */
81 #define LIBTRACE_ARPHRD_HIPPI 780 /* High Performance Parallel I'face. */
82 #define LIBTRACE_ARPHRD_ASH 781 /* (Nexus Electronics) Ash. */
83 #define LIBTRACE_ARPHRD_ECONET 782 /* Acorn Econet. */
84 #define LIBTRACE_ARPHRD_IRDA 783 /* Linux-IrDA. */
85 #define LIBTRACE_ARPHRD_FCPP 784 /* Point to point fibrechanel. */
86 #define LIBTRACE_ARPHRD_FCAL 785 /* Fibrechanel arbitrated loop. */
87 #define LIBTRACE_ARPHRD_FCPL 786 /* Fibrechanel public loop. */
88 #define LIBTRACE_ARPHRD_FCFABRIC 787 /* Fibrechanel fabric. */
89 #define LIBTRACE_ARPHRD_IEEE802_TR 800 /* Magic type ident for TR. */
90 #define LIBTRACE_ARPHRD_IEEE80211 801 /* IEEE 802.11. */
91 #define LIBTRACE_ARPHRD_IEEE80211_PRISM 802 /* IEEE 802.11 + Prism2 header. */
92 #define LIBTRACE_ARPHRD_IEEE80211_RADIOTAP 803 /* IEEE 802.11 + radiotap header. */
93 #define LIBTRACE_ARPHRD_IEEE802154 804 /* IEEE 802.15.4 header. */
94 #define LIBTRACE_ARPHRD_IEEE802154_PHY 805 /* IEEE 802.15.4 PHY header. */
95 
96 #define LIBTRACE_ARPHRD_VOID 0xFFFF /* Void type, nothing is known. */
97 #define LIBTRACE_ARPHRD_NONE 0xFFFE /* Zero header length. */
98 
99 
100 #endif