Documentation
¶
Overview ¶
Package ethernet implements the Ethernet header.
Index ¶
- Constants
- Variables
- type Ethernet
- func (eth *Ethernet) Field(id fwdpacket.FieldID) ([]byte, error)
- func (eth *Ethernet) Header() []byte
- func (eth *Ethernet) ID(int) fwdpb.PacketHeaderId
- func (eth *Ethernet) Modify(id fwdpb.PacketHeaderId) error
- func (eth *Ethernet) Rebuild() error
- func (eth *Ethernet) Remove(id fwdpb.PacketHeaderId) error
- func (Ethernet) Trailer() []byte
- func (eth *Ethernet) UpdateField(id fwdpacket.FieldID, op int, arg []byte) (bool, error)
Constants ¶
View Source
const (
Reserved = nextReserved // Opaque data.
)
Constants defined for various ether types in network byte order.
Variables ¶
View Source
var HeaderNext = map[fwdpb.PacketHeaderId]uint16{ fwdpb.PacketHeaderId_PACKET_HEADER_ID_IP4: nextIP4, fwdpb.PacketHeaderId_PACKET_HEADER_ID_IP6: nextIP6, fwdpb.PacketHeaderId_PACKET_HEADER_ID_ARP: nextARP, }
HeaderNext maps packet headers to ether-types.
View Source
var NextHeader = map[uint16]fwdpb.PacketHeaderId{}
NextHeader maps ether-types to packet header.
Functions ¶
This section is empty.
Types ¶
type Ethernet ¶
type Ethernet struct {
// contains filtered or unexported fields
}
An Ethernet presents a ethernet header. It can parse, query, add, remove and operate on Ethernet headers in the packet with zero, one and two vlan tags.
func (*Ethernet) ID ¶
func (eth *Ethernet) ID(int) fwdpb.PacketHeaderId
ID returns the ethernet header's ID.
func (*Ethernet) Modify ¶
func (eth *Ethernet) Modify(id fwdpb.PacketHeaderId) error
Modify modifies an existing ethernet header by adding vlan tags.
Click to show internal directories.
Click to hide internal directories.