package mirage-types
TCP/IPv4 stack
A complete TCP/IPv4 stack that can be used by applications to receive and transmit network traffic.
The type for network interface that is used to transmit and receive traffic associated with this stack.
The type for configuration modes associated with this interface. These can consist of the IPv4 address binding, or a DHCP interface.
The type for the collection of user configuration specified to construct a stack.
udpv4 t
obtains a descriptor for use with the UDPV4
module, usually to transmit traffic.
tcpv4 t
obtains a descriptor for use with the TCPV4
module, usually to initiate outgoing connections.
ipv4 t
obtains a descriptor for use with the IPV4
module, which can handle raw IPv4 frames, or manipulate IP address configuration on the stack interface.
val listen_udpv4 : t -> port:int -> UDPV4.callback -> unit
listen_udpv4 t ~port cb
will register the cb
callback on the UDPv4 port
and immediately return. If port
is invalid (not between 0 and 65535 inclusive), it raises Invalid_argument
. Multiple bindings to the same port will overwrite previous bindings, so callbacks will not chain if ports clash.
val listen_tcpv4 : t -> port:int -> TCPV4.callback -> unit
listen_tcpv4 t ~port cb
will register the cb
callback on the TCPv4 port
and immediatey return. If port
is invalid (not between 0 and 65535 inclusive), it raises Invalid_argument
. Multiple bindings to the same port will overwrite previous bindings, so callbacks will not chain if ports clash.