/*
* Maximum length of an IEEE 802.3 frame; Ethernet type/length values
- * greater than it are types, Ethernet type/length values less than or
- * equal to it are lengths.
+ * less than or equal to it are lengths.
*/
-#define IEEE_802_3_MAX_LEN 1500
+#define IEEE_802_3_MAX_LEN 1500
+
+/*
+ * Minimum length of an Ethernet II frame; Ethernet type/length values
+ * greater than or equal to it are types.
+ */
+#define ETHERNET_II_MIN_LEN 1536
#ifndef ETHERTYPE_UNK
#define ETHERTYPE_UNK 0x0000
#define ETHERTYPE_CGMP 0x2001
#endif
-#ifndef ETHERTYPE_TRILL /* Internet Engineering Task Force */
-#define ETHERTYPE_TRILL 0x22F3
-#endif
-
-#ifndef ETHERTYPE_L2ISIS /* Internet Engineering Task Force */
-#define ETHERTYPE_L2ISIS 0x22F4
+#ifndef ETHERTYPE_GIGAMON
+#define ETHERTYPE_GIGAMON 0x22E5 /* Gigamon Header */
#endif
#ifndef ETHERTYPE_MSRP
#define ETHERTYPE_AVBTP 0x22F0
#endif
-#ifndef ETHERTYPE_GIGAMON
-#define ETHERTYPE_GIGAMON 0x22e5 /* Gigamon Header */
+#ifndef ETHERTYPE_ROHC /* ROHC (Robust Header Compression) is an IP header compression protocol specified in */
+#define ETHERTYPE_ROHC 0x22F1 /* IETF RFC 3095 "RObust Header Compression (ROHC): Framework and four profiles: RTP, */
+#endif /* UDP, ESP, and uncompressed". The specification is available at
+ * http://www.ietf.org/rfc/rfc3095.txt.
+ */
+
+#ifndef ETHERTYPE_TRILL /* Internet Engineering Task Force */
+#define ETHERTYPE_TRILL 0x22F3
+#endif
+
+#ifndef ETHERTYPE_L2ISIS /* Internet Engineering Task Force */
+#define ETHERTYPE_L2ISIS 0x22F4
#endif
#ifndef ETHERTYPE_CENTRINO_PROMISC
#define ETHERTYPE_MS_NLB_HEARTBEAT 0x886F /* MS Network Load Balancing heartbeat http://www.microsoft.com/technet/treeview/default.asp?url=/TechNet/prodtechnol/windows2000serv/deploy/confeat/nlbovw.asp */
#endif
+#ifndef ETHERTYPE_JUMBO_LLC
+#define ETHERTYPE_JUMBO_LLC 0x8870 /* 802.2 jumbo frames http://tools.ietf.org/html/draft-ietf-isis-ext-eth */
+#endif
+
#ifndef ETHERTYPE_HOMEPLUG
#define ETHERTYPE_HOMEPLUG 0x887B /* IEEE assigned Ethertype */
#endif
#define ETHERTYPE_BRDWALK 0x88AE
#endif
+#ifndef ETHERTYPE_WAI
+#define ETHERTYPE_WAI 0x88B4 /* Instant Wireless Network Communications, Co. Ltd. */
+#endif /* WAI is a new authentication protocol that
+ will be used to access authentication in
+ IP based networks. This protocol establishes
+ a logic channel between a station and access
+ equipment by using an EtherType Field to
+ accomplish authentication. */
+
#ifndef ETHERTYPE_IEEE802_OUI_EXTENDED
#define ETHERTYPE_IEEE802_OUI_EXTENDED 0x88B7 /* IEEE 802a OUI Extended Ethertype */
#define ETHERTYPE_VMLAB 0x88DE /* VMware LabManager (used to be Akimbi Systems) */
#endif
+#ifndef ETHERTYPE_HOMEPLUG_AV
+#define ETHERTYPE_HOMEPLUG_AV 0x88E1 /* HomePlug AV */
+#endif
+
#ifndef ETHERTYPE_MRP
#define ETHERTYPE_MRP 0x88E3 /* IEC 61158-6-10 Media Redundancy Protocol (MRP) */
#endif
#define ETHERTYPE_IEEE_802_1AH 0x88E7 /* IEEE 802.1ah Provider Backbone Bridge Mac-in-Mac */
#endif
+#ifndef ETHERTYPE_MVRP
+#define ETHERTYPE_MVRP 0x88F5 /* IEEE 802.1ak Multiple VLAN Registration Protocol */
+#endif
+
+#ifndef ETHERTYPE_MMRP
+#define ETHERTYPE_MMRP 0x88F6 /* IEEE 802.1ak Multiple MAC Registration Protocol */
+#endif
+
#ifndef ETHERTYPE_PTP
#define ETHERTYPE_PTP 0x88F7 /* IEEE1588v2 (PTPv2) over Ethernet */
-#endif /* in particular for the information exchange between IED's in a power */
- /* transmission or distribution substation. */
- /* There are three types of application services */
+#endif /* in particular for the information exchange between IED's in a power */
+ /* transmission or distribution substation. */
+ /* There are three types of application services */
#ifndef ETHERTYPE_PRP
-#define ETHERTYPE_PRP 0x88FB /* Parallel Redundancy Protocol (IEC62439 Chapter 6) */
+#define ETHERTYPE_PRP 0x88FB /* Parallel Redundancy Protocol (IEC62439 Part 3) */
#endif
#ifndef ETHERTYPE_FLIP
#define ETHERTYPE_CFM 0x8902 /* IEEE 802.1ag Connectivity Fault Management(CFM) protocol */
#endif
+#ifndef ETHERTYPE_DCE
+#define ETHERTYPE_DCE 0x8903 /* Cisco Systems Inc DCE */
+#endif
+
#ifndef ETHERTYPE_FCOE
#define ETHERTYPE_FCOE 0x8906 /* Fibre Channel over Ethernet */
#endif
+#ifndef ETHERTYPE_IEEE80211_DATA_ENCAP
+#define ETHERTYPE_IEEE80211_DATA_ENCAP 0x890d /* IEEE 802.11 data encapsulation */
+#endif
+
#ifndef ETHERTYPE_LINX
#define ETHERTYPE_LINX 0x8911 /* ENEA LINX IPC protocol over Ethernet */
#endif
#define ETHERTYPE_TTE_PCF 0x891D /* TTEthernet Protocol Control Frame */
#endif
+#ifndef ETHERTYPE_HSR
+#define ETHERTYPE_HSR 0x892F /* High-availability Seamless Redundancy (IEC62439 Part 3) */
+#endif
+
#ifndef ETHERTYPE_LOOP
#define ETHERTYPE_LOOP 0x9000 /* used for layer 2 testing (do i see my own frames on the wire) */
#endif
-#ifndef ETHERTYPE_RTMAC
+#ifndef ETHERTYPE_RTMAC
#define ETHERTYPE_RTMAC 0x9021 /* RTnet: Real-Time Media Access Control */
-#endif
-
-#ifndef ETHERTYPE_RTCFG
+#endif
+
+#ifndef ETHERTYPE_RTCFG
#define ETHERTYPE_RTCFG 0x9022 /* RTnet: Real-Time Configuration Protocol */
-#endif
-
-#ifndef ETHERTYPE_LLT
+#endif
+
+#ifndef ETHERTYPE_LLT
#define ETHERTYPE_LLT 0xCAFE /* Veritas Low Latency Transport (not officially registered) */
-#endif
-
-#ifndef ETHERTYPE_FCFT
+#endif
+
+#ifndef ETHERTYPE_TDMOE
+#define ETHERTYPE_TDMOE 0xD00D /* Digium TDMoE packets (not officially registered) */
+#endif
+
+#ifndef ETHERTYPE_FCFT
#define ETHERTYPE_FCFT 0xFCFC /* used to transport FC frames+MDS hdr internal to Cisco's MDS switch */
#endif
+#ifndef ETHERTYPE_ROCE
+#define ETHERTYPE_ROCE 0x8915 /* Infiniband RDMA over Converged Ethernet */
+#endif
+
WS_VAR_IMPORT const value_string etype_vals[];
#endif /* etypes.h */