package mirage-net
-
mirage-net
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
A network interface that serves Ethernet frames.
The type for network interface errors.
include Mirage_device.S
write net ~size fill
allocates a buffer of length size
, where size
must not exceed the interface maximum packet size (mtu
plus Ethernet header). The allocated buffer is zeroed and passed to the fill
function which returns the payload length, which may not exceed the length of the buffer. When fill
returns, a sub buffer is put on the wire: the allocated buffer from index 0 to the returned length.
listen ~header_size net fn
waits for a packet
with size at most header_size + mtu
on the network device. When a packet
is received, an asynchronous task is created in which fn packet
is called. The ownership of packet
is transferred to fn
. The function can be stopped by calling disconnect
in the device layer.
val mtu : t -> int
mtu net
is the Maximum Transmission Unit of net
. This excludes the Ethernet header.
val reset_stats_counters : t -> unit
Reset the statistics associated with this interface to their defaults.