Expand description

Support for implementing transport layer protocols

The transport module provides the ability to send and receive packets at the transport layer using IPv4 or IPv6. It also enables layer 3 networking for specific transport protocols, using IPv4 only.

Note that this is limited by operating system support - for example, on OS X and FreeBSD, it is impossible to implement protocols which are already implemented in the kernel such as TCP and UDP.

Macros

Create an iterator for some packet type.

Structs

Structure used for holding all configurable options for describing possible options for transport channels.

An iterator over packets of type IcmpPacket.

An iterator over packets of type Icmpv6Packet.

An iterator over packets of type Ipv4Packet.

An iterator over packets of type TcpPacket.

Structure used for receiving at the transport layer. Should be created with transport_channel().

Structure used for sending at the transport layer. Should be created with transport_channel().

An iterator over packets of type UdpPacket.

Enums

Type of transport channel to present.

Represents a transport layer protocol.

Functions

Return a packet iterator with packets of type IcmpPacket for some transport receiver.

Return a packet iterator with packets of type Icmpv6Packet for some transport receiver.

Return a packet iterator with packets of type Ipv4Packet for some transport receiver.

Return a packet iterator with packets of type TcpPacket for some transport receiver.

Create a new (TransportSender, TransportReceiver) pair.

Create a new (TransportSender, TransportReceiver) pair using the additional options specified.

Return a packet iterator with packets of type UdpPacket for some transport receiver.