#define ETHER_TYPE_VLAN 0x8100 /**< IEEE 802.1Q VLAN tagging. */
#define ETHER_TYPE_1588 0x88F7 /**< IEEE 802.1AS 1588 Precise Time Protocol. */
#define ETHER_TYPE_SLOW 0x8809 /**< Slow protocols (LACP and Marker). */
+#define ETHER_TYPE_TEB 0x6558 /**< Transparent Ethernet Bridging. */
#define ETHER_VXLAN_HLEN (sizeof(struct udp_hdr) + sizeof(struct vxlan_hdr))
/**< VXLAN tunnel header length. */
struct ether_hdr *oh, *nh;
struct vlan_hdr *vh;
-#ifdef RTE_MBUF_REFCNT
/* Can't insert header if mbuf is shared */
if (rte_mbuf_refcnt_read(*m) > 1) {
struct rte_mbuf *copy;
rte_pktmbuf_free(*m);
*m = copy;
}
-#endif
+
oh = rte_pktmbuf_mtod(*m, struct ether_hdr *);
nh = (struct ether_hdr *)
rte_pktmbuf_prepend(*m, sizeof(struct vlan_hdr));