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