18cf6c252SPaul Traina /* 28cf6c252SPaul Traina * Copyright (c) 1993, 1994, 1996 38cf6c252SPaul Traina * The Regents of the University of California. All rights reserved. 48cf6c252SPaul Traina * 58cf6c252SPaul Traina * Redistribution and use in source and binary forms, with or without 68cf6c252SPaul Traina * modification, are permitted provided that: (1) source code distributions 78cf6c252SPaul Traina * retain the above copyright notice and this paragraph in its entirety, (2) 88cf6c252SPaul Traina * distributions including binary code include the above copyright notice and 98cf6c252SPaul Traina * this paragraph in its entirety in the documentation or other materials 108cf6c252SPaul Traina * provided with the distribution, and (3) all advertising materials mentioning 118cf6c252SPaul Traina * features or use of this software display the following acknowledgement: 128cf6c252SPaul Traina * ``This product includes software developed by the University of California, 138cf6c252SPaul Traina * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of 148cf6c252SPaul Traina * the University nor the names of its contributors may be used to endorse 158cf6c252SPaul Traina * or promote products derived from this software without specific prior 168cf6c252SPaul Traina * written permission. 178cf6c252SPaul Traina * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED 188cf6c252SPaul Traina * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF 198cf6c252SPaul Traina * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 208cf6c252SPaul Traina */ 218cf6c252SPaul Traina 22dc2c7305SBill Fenner /* 23dc2c7305SBill Fenner * Ethernet types. 24dc2c7305SBill Fenner * 25dc2c7305SBill Fenner * We wrap the declarations with #ifdef, so that if a file includes 26dc2c7305SBill Fenner * <netinet/if_ether.h>, which may declare some of these, we don't 27dc2c7305SBill Fenner * get a bunch of complaints from the C compiler about redefinitions 28dc2c7305SBill Fenner * of these values. 29dc2c7305SBill Fenner * 30dc2c7305SBill Fenner * We declare all of them here so that no file has to include 31dc2c7305SBill Fenner * <netinet/if_ether.h> if all it needs are ETHERTYPE_ values. 32dc2c7305SBill Fenner */ 338cf6c252SPaul Traina 34dc2c7305SBill Fenner #ifndef ETHERTYPE_PUP 35dc2c7305SBill Fenner #define ETHERTYPE_PUP 0x0200 /* PUP protocol */ 36dc2c7305SBill Fenner #endif 37dc2c7305SBill Fenner #ifndef ETHERTYPE_IP 38dc2c7305SBill Fenner #define ETHERTYPE_IP 0x0800 /* IP protocol */ 39dc2c7305SBill Fenner #endif 40dc2c7305SBill Fenner #ifndef ETHERTYPE_ARP 41dc2c7305SBill Fenner #define ETHERTYPE_ARP 0x0806 /* Addr. resolution protocol */ 42dc2c7305SBill Fenner #endif 438cf6c252SPaul Traina #ifndef ETHERTYPE_NS 448cf6c252SPaul Traina #define ETHERTYPE_NS 0x0600 458cf6c252SPaul Traina #endif 468cf6c252SPaul Traina #ifndef ETHERTYPE_SPRITE 478cf6c252SPaul Traina #define ETHERTYPE_SPRITE 0x0500 488cf6c252SPaul Traina #endif 498cf6c252SPaul Traina #ifndef ETHERTYPE_TRAIL 508cf6c252SPaul Traina #define ETHERTYPE_TRAIL 0x1000 518cf6c252SPaul Traina #endif 528cf6c252SPaul Traina #ifndef ETHERTYPE_MOPDL 538cf6c252SPaul Traina #define ETHERTYPE_MOPDL 0x6001 548cf6c252SPaul Traina #endif 558cf6c252SPaul Traina #ifndef ETHERTYPE_MOPRC 568cf6c252SPaul Traina #define ETHERTYPE_MOPRC 0x6002 578cf6c252SPaul Traina #endif 588cf6c252SPaul Traina #ifndef ETHERTYPE_DN 598cf6c252SPaul Traina #define ETHERTYPE_DN 0x6003 608cf6c252SPaul Traina #endif 618cf6c252SPaul Traina #ifndef ETHERTYPE_LAT 628cf6c252SPaul Traina #define ETHERTYPE_LAT 0x6004 638cf6c252SPaul Traina #endif 648cf6c252SPaul Traina #ifndef ETHERTYPE_SCA 658cf6c252SPaul Traina #define ETHERTYPE_SCA 0x6007 668cf6c252SPaul Traina #endif 67*6f9cba8fSJoseph Mingrone #ifndef ETHERTYPE_TEB 68*6f9cba8fSJoseph Mingrone #define ETHERTYPE_TEB 0x6558 69*6f9cba8fSJoseph Mingrone #endif 708cf6c252SPaul Traina #ifndef ETHERTYPE_REVARP 71*6f9cba8fSJoseph Mingrone #define ETHERTYPE_REVARP 0x8035 /* reverse Addr. resolution protocol */ 728cf6c252SPaul Traina #endif 738cf6c252SPaul Traina #ifndef ETHERTYPE_LANBRIDGE 748cf6c252SPaul Traina #define ETHERTYPE_LANBRIDGE 0x8038 758cf6c252SPaul Traina #endif 768cf6c252SPaul Traina #ifndef ETHERTYPE_DECDNS 778cf6c252SPaul Traina #define ETHERTYPE_DECDNS 0x803c 788cf6c252SPaul Traina #endif 798cf6c252SPaul Traina #ifndef ETHERTYPE_DECDTS 808cf6c252SPaul Traina #define ETHERTYPE_DECDTS 0x803e 818cf6c252SPaul Traina #endif 828cf6c252SPaul Traina #ifndef ETHERTYPE_VEXP 838cf6c252SPaul Traina #define ETHERTYPE_VEXP 0x805b 848cf6c252SPaul Traina #endif 858cf6c252SPaul Traina #ifndef ETHERTYPE_VPROD 868cf6c252SPaul Traina #define ETHERTYPE_VPROD 0x805c 878cf6c252SPaul Traina #endif 888cf6c252SPaul Traina #ifndef ETHERTYPE_ATALK 898cf6c252SPaul Traina #define ETHERTYPE_ATALK 0x809b 908cf6c252SPaul Traina #endif 918cf6c252SPaul Traina #ifndef ETHERTYPE_AARP 928cf6c252SPaul Traina #define ETHERTYPE_AARP 0x80f3 938cf6c252SPaul Traina #endif 94dc2c7305SBill Fenner #ifndef ETHERTYPE_8021Q 95dc2c7305SBill Fenner #define ETHERTYPE_8021Q 0x8100 968751327cSBill Fenner #endif 970a94d38fSBill Fenner #ifndef ETHERTYPE_IPX 980a94d38fSBill Fenner #define ETHERTYPE_IPX 0x8137 990a94d38fSBill Fenner #endif 1000a94d38fSBill Fenner #ifndef ETHERTYPE_IPV6 1010a94d38fSBill Fenner #define ETHERTYPE_IPV6 0x86dd 1020a94d38fSBill Fenner #endif 10304fb2745SSam Leffler #ifndef ETHERTYPE_MPLS 10404fb2745SSam Leffler #define ETHERTYPE_MPLS 0x8847 10504fb2745SSam Leffler #endif 10604fb2745SSam Leffler #ifndef ETHERTYPE_MPLS_MULTI 10704fb2745SSam Leffler #define ETHERTYPE_MPLS_MULTI 0x8848 10804fb2745SSam Leffler #endif 1095d18909fSSam Leffler #ifndef ETHERTYPE_PPPOED 1105d18909fSSam Leffler #define ETHERTYPE_PPPOED 0x8863 1115d18909fSSam Leffler #endif 1125d18909fSSam Leffler #ifndef ETHERTYPE_PPPOES 1135d18909fSSam Leffler #define ETHERTYPE_PPPOES 0x8864 1145d18909fSSam Leffler #endif 115ada6f083SXin LI #ifndef ETHERTYPE_8021AD 116ada6f083SXin LI #define ETHERTYPE_8021AD 0x88a8 117ada6f083SXin LI #endif 1188cf6c252SPaul Traina #ifndef ETHERTYPE_LOOPBACK 1198cf6c252SPaul Traina #define ETHERTYPE_LOOPBACK 0x9000 1208cf6c252SPaul Traina #endif 121d1e87331SXin LI #ifndef ETHERTYPE_8021QINQ 122d1e87331SXin LI #define ETHERTYPE_8021QINQ 0x9100 123d1e87331SXin LI #endif 124