aboutsummaryrefslogtreecommitdiff
path: root/sys/net/ethernet.h
diff options
context:
space:
mode:
authorPedro F. Giffuni <pfg@FreeBSD.org>2020-02-02 18:27:37 +0000
committerPedro F. Giffuni <pfg@FreeBSD.org>2020-02-02 18:27:37 +0000
commitbadbcf06e016ce71a37ad936c2f2e4c72a38656a (patch)
treec50790ede2eba3bbc3f8c1f20dcb144730b179b3 /sys/net/ethernet.h
parent4382f0f7a95ccc25804a430f0a66580bdb45fe10 (diff)
downloadsrc-badbcf06e016ce71a37ad936c2f2e4c72a38656a.tar.gz
src-badbcf06e016ce71a37ad936c2f2e4c72a38656a.zip
ethernet: add some more Ethertypes.
Add some types based on other BSDs and also add EtherCat and PROFINET, which are IEC standards. There is a public list (CSV format) at: https://standards.ieee.org/products-services/regauth/ MFC after: 2 weeks
Notes
Notes: svn path=/head/; revision=357414
Diffstat (limited to 'sys/net/ethernet.h')
-rw-r--r--sys/net/ethernet.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/net/ethernet.h b/sys/net/ethernet.h
index 77773eee04a7..f5e49ef63a4a 100644
--- a/sys/net/ethernet.h
+++ b/sys/net/ethernet.h
@@ -98,6 +98,11 @@ struct ether_vlan_header {
((((((pri) & 7) << 1) | ((cfi) & 1)) << 12) | ((vlid) & EVL_VLID_MASK))
/*
+ * Ethernet protocol types.
+ *
+ * A public list is available from the IEEE Ragistration Authority:
+ * https://standards.ieee.org/products-services/regauth/
+ *
* NOTE: 0x0000-0x05DC (0..1500) are generally IEEE 802.3 length fields.
* However, there are some conflicts.
*/
@@ -347,7 +352,14 @@ struct ether_vlan_header {
#define ETHERTYPE_PPPOE 0x8864 /* PPP Over Ethernet Session Stage */
#define ETHERTYPE_LANPROBE 0x8888 /* HP LanProbe test? */
#define ETHERTYPE_PAE 0x888e /* EAPOL PAE/802.1x */
+#define ETHERTYPE_PROFINET 0x8892 /* PROFINET RT Protocol */
+#define ETHERTYPE_AOE 0x88a2 /* ATA Protocol */
+#define ETHERTYPE_ETHERCAT 0x88a4 /* EtherCat Protocol */
+#define ETHERTYPE_FCOE 0x8906 /* Fibre Channel over Ethernet */
#define ETHERTYPE_QINQ 0x88A8 /* 802.1ad VLAN stacking */
+#define ETHERTYPE_LLDP 0x88CC /* Link Layer Discovery Protocol */
+#define ETHERTYPE_MACSEC 0x88e5 /* 802.1AE MAC Security */
+#define ETHERTYPE_PBB 0x88e7 /* 802.1Q Provider Backbone Bridges */
#define ETHERTYPE_LOOPBACK 0x9000 /* Loopback: used to test interfaces */
#define ETHERTYPE_8021Q9100 0x9100 /* IEEE 802.1Q stacking (proprietary) */
#define ETHERTYPE_LBACK ETHERTYPE_LOOPBACK /* DEC MOP loopback */