type buffer = Cstruct.t
The type for memory buffers.
type ipaddr = Ipaddr.V4.t
The type for an IP address representations.
The type for input function continuation to pass onto the underlying
IP stack. This will normally be a NOOP for a conventional kernel, but a direct implementation will parse the buffer.
include Mirage_device.S with type 'a io = 'a Lwt.t
type 'a io = 'a Lwt.t
The type for potentially blocking I/O operation
The type for callback functions that adds the UDP metadata for
dst IP addresses, the
src_port of the connection and the
buffer payload of the datagram.
input listeners t demultiplexes incoming datagrams based on their destination port. The
listeners callback will either return a concrete handler or a
None, which results in the datagram being dropped.
val write : ?src_port:int -> ?ttl:int -> dst:ipaddr -> dst_port:int -> t -> buffer -> ( unit, error ) Pervasives.result io
write ~src_port ~ttl ~dst ~dst_port udp data is a thread that writes
data from an optional
src_port to a
dst_port IPv4 address pair. An optional time-to-live (
ttl) is passed through to the IP stack.