Module Mirage_impl_ip

type v4
type v6
type 'a ip
type ipv4 = v4 ip
type ipv6 = v6 ip
val ip : 'a ip Functoria.typ
val ipv4 : ipv4 Functoria.typ
val ipv6 : ipv6 Functoria.typ
type ipv4_config = {
network : Ipaddr.V4.Prefix.t * Ipaddr.V4.t;
gateway : Ipaddr.V4.t option;
}
type ipv6_config = {
addresses : Ipaddr.V6.t list;
netmasks : Ipaddr.V6.Prefix.t list;
gateways : Ipaddr.V6.t list;
}
val create_ipv4 : ?⁠group:string -> ?⁠config:ipv4_config -> ?⁠random:Mirage_impl_random.random Functoria.impl -> ?⁠clock:Mirage_impl_mclock.mclock Functoria.impl -> Mirage_impl_ethernet.ethernet Functoria.impl -> Mirage_impl_arpv4.arpv4 Functoria.impl -> ipv4 Functoria.impl
val create_ipv6 : ?⁠random:Mirage_impl_random.random Functoria.impl -> ?⁠time:Mirage_impl_time.time Functoria.impl -> ?⁠clock:Mirage_impl_mclock.mclock Functoria.impl -> ?⁠group:string -> Mirage_impl_ethernet.ethernet Functoria.impl -> ipv6_config -> ipv6 Functoria.impl
val dhcp : Mirage_impl_random.random Functoria.impl -> Mirage_impl_time.time Functoria.impl -> Mirage_impl_network.network Functoria.impl -> Mirage_impl_dhcp.dhcp Functoria.impl
val ipv4_of_dhcp : ?⁠random:Mirage_impl_random.random Functoria.impl -> ?⁠clock:Mirage_impl_mclock.mclock Functoria.impl -> Mirage_impl_dhcp.dhcp Functoria.impl -> Mirage_impl_ethernet.ethernet Functoria.impl -> Mirage_impl_arpv4.arpv4 Functoria.impl -> ipv4 Functoria.impl
val ipv4_qubes : ?⁠random:Mirage_impl_random.random Functoria.impl -> ?⁠clock:Mirage_impl_mclock.mclock Functoria.impl -> Mirage_impl_qubesdb.qubesdb Functoria.impl -> Mirage_impl_ethernet.ethernet Functoria.impl -> Mirage_impl_arpv4.arpv4 Functoria.impl -> ipv4 Functoria.impl
val right_tcpip_library : ?⁠ocamlfind:string list -> sublibs:string list -> string -> Functoria.package list Functoria.value