Documentation
¶
Overview ¶
Package gorandpacket is a go library for randomly generating ethernet packets It's main purpose is for testing networking software/hardware
Index ¶
- type RandPacketT
- func (r *RandPacketT) RandByte() byte
- func (r *RandPacketT) RandEthernetLayer() *layers.Ethernet
- func (r *RandPacketT) RandEthernetPacket() gopacket.SerializeBuffer
- func (r *RandPacketT) RandIPTCPLayer() *layers.TCP
- func (r *RandPacketT) RandIPUDPLayer() *layers.UDP
- func (r *RandPacketT) RandIPv4Addr() net.IP
- func (r *RandPacketT) RandIPv4Layer() *layers.IPv4
- func (r *RandPacketT) RandIPv6Addr() net.IP
- func (r *RandPacketT) RandInt(n int) int
- func (r *RandPacketT) RandInt16() uint16
- func (r *RandPacketT) RandInt32() uint32
- func (r *RandPacketT) RandL3Layer(l3type layers.IPProtocol) gopacket.SerializableLayer
- func (r *RandPacketT) RandMACAddr() net.HardwareAddr
- func (r *RandPacketT) RandPayload() []byte
- func (r *RandPacketT) SetSeed(s int64)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type RandPacketT ¶
Struct RandPacket holds the gorandpacket object
func NewGorandPacket ¶
func NewGorandPacket() RandPacketT
NewGorandPacket Factory method for gorandpacket
func (*RandPacketT) RandByte ¶
func (r *RandPacketT) RandByte() byte
RandByte Generate a random byte
func (*RandPacketT) RandEthernetLayer ¶
func (r *RandPacketT) RandEthernetLayer() *layers.Ethernet
RandEthernetLayer generates a random Ethernet layer
func (*RandPacketT) RandEthernetPacket ¶
func (r *RandPacketT) RandEthernetPacket() gopacket.SerializeBuffer
RandEthernetPacket generates a random ethernet packet. For now it only generates IPv4/TCP packets TODO: Generate more types/protocols
func (*RandPacketT) RandIPTCPLayer ¶
func (r *RandPacketT) RandIPTCPLayer() *layers.TCP
RandIPv4TCPLayer generates a random TCP layer
func (*RandPacketT) RandIPUDPLayer ¶
func (r *RandPacketT) RandIPUDPLayer() *layers.UDP
RandIPUDP generates a random UDP layer
func (*RandPacketT) RandIPv4Addr ¶
func (r *RandPacketT) RandIPv4Addr() net.IP
RandIPv4Addr generates a random IPv4 address
func (*RandPacketT) RandIPv4Layer ¶
func (r *RandPacketT) RandIPv4Layer() *layers.IPv4
RandIPv4Layer generates a random IPv4 layer
func (*RandPacketT) RandIPv6Addr ¶
func (r *RandPacketT) RandIPv6Addr() net.IP
RandIPv6Addr Generate a random IPv6 address
func (*RandPacketT) RandInt ¶
func (r *RandPacketT) RandInt(n int) int
RandInt generates a random int
func (*RandPacketT) RandInt16 ¶
func (r *RandPacketT) RandInt16() uint16
RandInt16 generates random uint16
func (*RandPacketT) RandInt32 ¶
func (r *RandPacketT) RandInt32() uint32
RandInt32 generates random uint32
func (*RandPacketT) RandL3Layer ¶
func (r *RandPacketT) RandL3Layer(l3type layers.IPProtocol) gopacket.SerializableLayer
RandL3Layer generates a random L3 layer: currently supports TCP & UDP only.
func (*RandPacketT) RandMACAddr ¶
func (r *RandPacketT) RandMACAddr() net.HardwareAddr
RandMACAddr Generate a random MAC address
func (*RandPacketT) RandPayload ¶
func (r *RandPacketT) RandPayload() []byte
RandPayload generates a Random Payload
func (*RandPacketT) SetSeed ¶
func (r *RandPacketT) SetSeed(s int64)
SetSeed Set a seed from an external source