package tcpip

  1. Overview
  2. Docs

Parameters

module R : Mirage_random.C
module C : Mirage_clock.MCLOCK

Signature

include Mirage_protocols_lwt.IPV4
type error = private [>
  1. | Mirage_protocols.Ip.error
]
val pp_error : error Fmt.t
type buffer = Cstruct.t
type ipaddr = Ipaddr.V4.t
val pp_ipaddr : ipaddr Fmt.t
type 'a io = 'a Lwt.t
type t
val disconnect : t -> unit io
type callback = src:ipaddr -> dst:ipaddr -> buffer -> unit io
val input : t -> tcp:callback -> udp:callback -> default:(proto:int -> callback) -> buffer -> unit io
val write : t -> ?fragment:bool -> ?ttl:int -> ?src:ipaddr -> ipaddr -> Mirage_protocols.Ip.proto -> ?size:int -> (buffer -> int) -> buffer list -> (unit, error) Stdlib.result io
val pseudoheader : t -> ?src:ipaddr -> ipaddr -> Mirage_protocols.Ip.proto -> int -> buffer
val src : t -> dst:ipaddr -> ipaddr
val set_ip : t -> ipaddr -> unit io
val get_ip : t -> ipaddr list
val mtu : t -> int
val connect : ?ip:Ipaddr.V4.t -> ?network:Ipaddr.V4.Prefix.t -> ?gateway:Ipaddr.V4.t option -> C.t -> E.t -> A.t -> t Lwt.t

Connect to an ipv4 device. Default ip is Ipaddr.V4.any Default network is Ipaddr.V4.any/0 Default gateway is None.

OCaml

Innovation. Community. Security.