1#ifndef ETHERNET_HEADER_HPP_
2#define ETHERNET_HEADER_HPP_
4#include <vanetza/common/byte_buffer.hpp>
5#include <vanetza/common/byte_order.hpp>
6#include <vanetza/net/mac_address.hpp>
16constexpr std::size_t ethernet_header_length()
18 return 2 *
sizeof(MacAddress::octets) +
sizeof(uint16_t);
29 using EtherType = uint16be_t;
30 static constexpr std::size_t length_bytes = ethernet_header_length();
43ByteBuffer create_ethernet_header(
const MacAddress& dest,
const MacAddress& src, uint16be_t proto);
52EthernetHeader decode_ethernet_header(ByteBuffer::const_iterator, ByteBuffer::const_iterator);