datagram

package
v0.12.0 Latest Latest
Warning

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

Go to latest
Published: Apr 4, 2025 License: GPL-3.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BytePayload

type BytePayload struct {
	Payload []byte
}

func (*BytePayload) Append

func (data *BytePayload) Append(b []byte) []byte

func (*BytePayload) Len

func (data *BytePayload) Len() uint64

func (*BytePayload) Parse

func (data *BytePayload) Parse(b []byte) error

func (*BytePayload) Send

func (data *BytePayload) Send(w io.Writer) error

type CompressedPayload

type CompressedPayload struct {
	ContextID uint64
	Payload   []byte
}

func (*CompressedPayload) Append

func (data *CompressedPayload) Append(b []byte) []byte

func (*CompressedPayload) Len

func (data *CompressedPayload) Len() uint64

func (*CompressedPayload) Parse

func (data *CompressedPayload) Parse(b []byte) error

func (*CompressedPayload) Send

func (data *CompressedPayload) Send(w io.Writer) error

type CompressionAssignPayload

type CompressionAssignPayload struct {
	ContextID uint64
	IPVersion uint8
	Addr      netip.Addr
	Port      uint16
}

func (*CompressionAssignPayload) Append

func (data *CompressionAssignPayload) Append(b []byte) []byte

func (*CompressionAssignPayload) Len

func (data *CompressionAssignPayload) Len() uint64

func (*CompressionAssignPayload) Parse

func (data *CompressionAssignPayload) Parse(b []byte) error

func (*CompressionAssignPayload) Send

func (data *CompressionAssignPayload) Send(w io.Writer) error

type CompressionClosePayload

type CompressionClosePayload struct {
	ContextID uint64
}

func (*CompressionClosePayload) Append

func (data *CompressionClosePayload) Append(b []byte) []byte

func (*CompressionClosePayload) Len

func (data *CompressionClosePayload) Len() uint64

func (*CompressionClosePayload) Parse

func (data *CompressionClosePayload) Parse(b []byte) error

func (*CompressionClosePayload) Send

func (data *CompressionClosePayload) Send(w io.Writer) error

type Datagram

type Datagram struct {
	Type    uint64
	Length  uint64
	Payload Payload
}

func (*Datagram) Append

func (data *Datagram) Append(b []byte) []byte

func (*Datagram) Receive

func (data *Datagram) Receive(r io.Reader) error

func (*Datagram) ReceiveBuffer

func (data *Datagram) ReceiveBuffer(r io.Reader, b []byte) error

func (*Datagram) Send

func (data *Datagram) Send(w io.Writer) error

type DatagramSender

type DatagramSender struct {
	sync.Mutex
	W io.Writer
}

func (*DatagramSender) SendDatagram

func (ds *DatagramSender) SendDatagram(data Datagram) error

type Payload

type Payload interface {
	Append([]byte) []byte
	Len() uint64
	Parse([]byte) error
	Send(io.Writer) error
}

type UncompressedPayload

type UncompressedPayload struct {
	ContextID uint64
	IPVersion uint8
	Addr      netip.Addr
	Port      uint16
	Payload   []byte
}

func (*UncompressedPayload) Append

func (data *UncompressedPayload) Append(b []byte) []byte

func (*UncompressedPayload) Len

func (data *UncompressedPayload) Len() uint64

func (*UncompressedPayload) Parse

func (data *UncompressedPayload) Parse(b []byte) error

func (*UncompressedPayload) Send

func (data *UncompressedPayload) Send(w io.Writer) error

Jump to

Keyboard shortcuts

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