1478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*
2478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * Copyright (c) 1993, 1994, 1996
3478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project *	The Regents of the University of California.  All rights reserved.
4478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project *
5478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * Redistribution and use in source and binary forms, with or without
6478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * modification, are permitted provided that: (1) source code distributions
7478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * retain the above copyright notice and this paragraph in its entirety, (2)
8478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * distributions including binary code include the above copyright notice and
9478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * this paragraph in its entirety in the documentation or other materials
10478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * provided with the distribution, and (3) all advertising materials mentioning
11478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * features or use of this software display the following acknowledgement:
12478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * ``This product includes software developed by the University of California,
13478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of
14478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * the University nor the names of its contributors may be used to endorse
15478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * or promote products derived from this software without specific prior
16478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * written permission.
17478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
18478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
19478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
20478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project *
21478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * @(#) $Header: /tcpdump/master/libpcap/ethertype.h,v 1.13.2.1 2005/09/05 09:08:03 guy Exp $ (LBL)
22478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project */
23478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
24478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*
25478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * Ethernet types.
26478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project *
27478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * We wrap the declarations with #ifdef, so that if a file includes
28478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * <netinet/if_ether.h>, which may declare some of these, we don't
29478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * get a bunch of complaints from the C compiler about redefinitions
30478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * of these values.
31478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project *
32478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * We declare all of them here so that no file has to include
33478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * <netinet/if_ether.h> if all it needs are ETHERTYPE_ values.
34478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project */
35478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
36478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_PUP
37478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_PUP		0x0200	/* PUP protocol */
38478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
39478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_IP
40478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_IP		0x0800	/* IP protocol */
41478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
42478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_ARP
43478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_ARP		0x0806	/* Addr. resolution protocol */
44478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
45478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_REVARP
46478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_REVARP	0x8035	/* reverse Addr. resolution protocol */
47478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
48478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_NS
49478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_NS		0x0600
50478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
51478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef	ETHERTYPE_SPRITE
52478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_SPRITE	0x0500
53478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
54478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_TRAIL
55478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_TRAIL		0x1000
56478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
57478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef	ETHERTYPE_MOPDL
58478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_MOPDL		0x6001
59478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
60478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef	ETHERTYPE_MOPRC
61478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_MOPRC		0x6002
62478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
63478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef	ETHERTYPE_DN
64478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_DN		0x6003
65478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
66478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef	ETHERTYPE_LAT
67478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_LAT		0x6004
68478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
69478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_SCA
70478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_SCA		0x6007
71478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
72478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_REVARP
73478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_REVARP	0x8035
74478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
75478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef	ETHERTYPE_LANBRIDGE
76478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_LANBRIDGE	0x8038
77478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
78478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef	ETHERTYPE_DECDNS
79478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_DECDNS	0x803c
80478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
81478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef	ETHERTYPE_DECDTS
82478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_DECDTS	0x803e
83478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
84478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef	ETHERTYPE_VEXP
85478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_VEXP		0x805b
86478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
87478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef	ETHERTYPE_VPROD
88478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_VPROD		0x805c
89478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
90478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_ATALK
91478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_ATALK		0x809b
92478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
93478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_AARP
94478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_AARP		0x80f3
95478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
96478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_8021Q
97478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_8021Q		0x8100
98478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
99478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_IPX
100478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_IPX		0x8137
101478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
102478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_IPV6
103478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_IPV6		0x86dd
104478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
105478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_MPLS
106478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_MPLS          0x8847
107478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
108478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_MPLS_MULTI
109478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_MPLS_MULTI    0x8848
110478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
111478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_PPPOED
112478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_PPPOED	0x8863
113478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
114478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef ETHERTYPE_PPPOES
115478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ETHERTYPE_PPPOES	0x8864
116478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
117478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef	ETHERTYPE_LOOPBACK
118478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define	ETHERTYPE_LOOPBACK	0x9000
119478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
120