package net
import "github.com/pion/dtls/v3/internal/net"
Package net implements DTLS specific networking primitives. NOTE: this package is an adaption of pion/transport/packetio that allows for storing a remote address alongside each packet in the buffer and implements relevant methods of net.PacketConn. If possible, the updates made in this repository will be reflected back upstream. If not, it is likely that this will be moved to a public package in this repository.
This package was migrated from pion/transport/packetio at https://github.com/pion/transport/commit/6890c795c807a617c054149eee40a69d7fdfbfdb
Index ¶
Variables ¶
ErrTimeout indicates that deadline was reached before operation could be completed.
Types ¶
type AddrPacket ¶
type AddrPacket struct {
// contains filtered or unexported fields
}
AddrPacket is a packet payload and the associated remote address from which it was received.
type PacketBuffer ¶
type PacketBuffer struct {
// contains filtered or unexported fields
}
PacketBuffer is a circular buffer for network packets. Each slot in the buffer contains the remote address from which the packet was received, as well as the packet data.
func NewPacketBuffer ¶
func NewPacketBuffer() *PacketBuffer
NewPacketBuffer creates a new PacketBuffer.
func (*PacketBuffer) Close ¶
func (b *PacketBuffer) Close() (err error)
Close closes the buffer, allowing unread packets to be read, but erroring on any new writes.
func (*PacketBuffer) ReadFrom ¶
ReadFrom reads a single packet from the buffer, or blocks until one is available.
func (*PacketBuffer) SetReadDeadline ¶
func (b *PacketBuffer) SetReadDeadline(t time.Time) error
SetReadDeadline sets the read deadline for the buffer.
func (*PacketBuffer) WriteTo ¶
WriteTo writes a single packet to the buffer. The supplied address will remain associated with the packet.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
internal/net/udp | Package udp implements DTLS specific UDP networking primitives. |
- Version
- v3.0.4 (latest)
- Published
- Nov 4, 2024
- Platform
- linux/amd64
- Imports
- 7 packages
- Last checked
- 1 week ago –
Tools for package owners.