tcpip

package
v0.0.0-...-dddbfaa Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 14, 2023 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ICMPTypePingRequest  byte = 0x8
	ICMPTypePingResponse byte = 0x0
)
View Source
const (
	ICMP IPProtocol = 0x01
	TCP             = 0x06
	UDP             = 0x11
)

IPProtocol type

View Source
const (
	FlagDontFragment = 1 << 1
	FlagMoreFragment = 1 << 2
)
View Source
const (
	TCPFin uint16 = 1 << 0
	TCPSyn uint16 = 1 << 1
	TCPRst uint16 = 1 << 2
	TCPPuh uint16 = 1 << 3
	TCPAck uint16 = 1 << 4
	TCPUrg uint16 = 1 << 5
	TCPEce uint16 = 1 << 6
	TCPEwr uint16 = 1 << 7
	TCPNs  uint16 = 1 << 8
)
View Source
const IPv4HeaderSize = 20
View Source
const TCPHeaderSize = 20
View Source
const UDPHeaderSize = 8

Variables

This section is empty.

Functions

func BroadcastAddr

func BroadcastAddr(network netip.Prefix) netip.Addr

func Checksum

func Checksum(sum uint32, b []byte) (answer [2]byte)

Checksum for Internet Protocol family headers

func IsIPv4

func IsIPv4(packet []byte) bool

func SetIPv4

func SetIPv4(packet []byte)

func Sum

func Sum(b []byte) uint32

Types

type ICMPPacket

type ICMPPacket []byte

func (ICMPPacket) Checksum

func (p ICMPPacket) Checksum() uint16

func (ICMPPacket) Code

func (p ICMPPacket) Code() byte

func (ICMPPacket) ResetChecksum

func (p ICMPPacket) ResetChecksum()

func (ICMPPacket) SetChecksum

func (p ICMPPacket) SetChecksum(sum [2]byte)

func (ICMPPacket) SetType

func (p ICMPPacket) SetType(v ICMPType)

func (ICMPPacket) Type

func (p ICMPPacket) Type() ICMPType

type ICMPType

type ICMPType = byte

type IPProtocol

type IPProtocol = byte

type IPv4Packet

type IPv4Packet []byte

func (IPv4Packet) Checksum

func (p IPv4Packet) Checksum() uint16

func (IPv4Packet) DataLen

func (p IPv4Packet) DataLen() uint16

func (IPv4Packet) DestinationIP

func (p IPv4Packet) DestinationIP() netip.Addr

func (IPv4Packet) Flags

func (p IPv4Packet) Flags() byte

func (IPv4Packet) FragmentOffset

func (p IPv4Packet) FragmentOffset() uint16

func (IPv4Packet) HeaderLen

func (p IPv4Packet) HeaderLen() uint16

func (IPv4Packet) Identification

func (p IPv4Packet) Identification() uint16

func (IPv4Packet) Payload

func (p IPv4Packet) Payload() []byte

func (IPv4Packet) Protocol

func (p IPv4Packet) Protocol() IPProtocol

func (IPv4Packet) PseudoSum

func (p IPv4Packet) PseudoSum() uint32

PseudoSum for tcp checksum

func (IPv4Packet) ResetChecksum

func (p IPv4Packet) ResetChecksum()

func (IPv4Packet) SetChecksum

func (p IPv4Packet) SetChecksum(sum [2]byte)

func (IPv4Packet) SetDestinationIP

func (p IPv4Packet) SetDestinationIP(ip netip.Addr)

func (IPv4Packet) SetFlags

func (p IPv4Packet) SetFlags(flags byte)

func (IPv4Packet) SetFragmentOffset

func (p IPv4Packet) SetFragmentOffset(offset uint32)

func (IPv4Packet) SetHeaderLen

func (p IPv4Packet) SetHeaderLen(length uint16)

func (IPv4Packet) SetIdentification

func (p IPv4Packet) SetIdentification(id uint16)

func (IPv4Packet) SetProtocol

func (p IPv4Packet) SetProtocol(protocol IPProtocol)

func (IPv4Packet) SetSourceIP

func (p IPv4Packet) SetSourceIP(ip netip.Addr)

func (IPv4Packet) SetTimeToLive

func (p IPv4Packet) SetTimeToLive(ttl byte)

func (IPv4Packet) SetTotalLength

func (p IPv4Packet) SetTotalLength(length uint16)

func (IPv4Packet) SetTypeOfService

func (p IPv4Packet) SetTypeOfService(tos byte)

func (IPv4Packet) SourceIP

func (p IPv4Packet) SourceIP() netip.Addr

func (IPv4Packet) TimeToLive

func (p IPv4Packet) TimeToLive() byte

func (IPv4Packet) TotalLen

func (p IPv4Packet) TotalLen() uint16

func (IPv4Packet) TypeOfService

func (p IPv4Packet) TypeOfService() byte

func (IPv4Packet) Valid

func (p IPv4Packet) Valid() bool

type TCPPacket

type TCPPacket []byte

func (TCPPacket) Checksum

func (p TCPPacket) Checksum() uint16

func (TCPPacket) DestinationPort

func (p TCPPacket) DestinationPort() uint16

func (TCPPacket) Flags

func (p TCPPacket) Flags() uint16

func (TCPPacket) ResetChecksum

func (p TCPPacket) ResetChecksum(psum uint32)

func (TCPPacket) SetChecksum

func (p TCPPacket) SetChecksum(sum [2]byte)

func (TCPPacket) SetDestinationPort

func (p TCPPacket) SetDestinationPort(port uint16)

func (TCPPacket) SetSourcePort

func (p TCPPacket) SetSourcePort(port uint16)

func (TCPPacket) SourcePort

func (p TCPPacket) SourcePort() uint16

func (TCPPacket) Valid

func (p TCPPacket) Valid() bool

type UDPPacket

type UDPPacket []byte

func (UDPPacket) Checksum

func (p UDPPacket) Checksum() uint16

func (UDPPacket) DestinationPort

func (p UDPPacket) DestinationPort() uint16

func (UDPPacket) Length

func (p UDPPacket) Length() uint16

func (UDPPacket) Payload

func (p UDPPacket) Payload() []byte

func (UDPPacket) ResetChecksum

func (p UDPPacket) ResetChecksum(psum uint32)

func (UDPPacket) SetChecksum

func (p UDPPacket) SetChecksum(sum [2]byte)

func (UDPPacket) SetDestinationPort

func (p UDPPacket) SetDestinationPort(port uint16)

func (UDPPacket) SetLength

func (p UDPPacket) SetLength(length uint16)

func (UDPPacket) SetSourcePort

func (p UDPPacket) SetSourcePort(port uint16)

func (UDPPacket) SourcePort

func (p UDPPacket) SourcePort() uint16

func (UDPPacket) Valid

func (p UDPPacket) Valid() bool

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL