2015-12-30 08:59:13 -05:00
|
|
|
(* Copyright (C) 2015, Thomas Leonard <thomas.leonard@unikernel.com>
|
|
|
|
See the README file for details. *)
|
|
|
|
|
|
|
|
(** The link from us to NetVM (and, through that, to the outside world). *)
|
|
|
|
|
2017-03-02 09:52:55 -05:00
|
|
|
open Fw_utils
|
2015-12-30 08:59:13 -05:00
|
|
|
|
2017-03-02 09:52:55 -05:00
|
|
|
module Make(Clock : Mirage_clock_lwt.MCLOCK) : sig
|
2015-12-30 08:59:13 -05:00
|
|
|
type t
|
|
|
|
|
2017-03-02 09:52:55 -05:00
|
|
|
val connect : clock:Clock.t -> Dao.network_config -> t Lwt.t
|
2015-12-30 08:59:13 -05:00
|
|
|
(** Connect to our NetVM (gateway). *)
|
|
|
|
|
|
|
|
val interface : t -> interface
|
|
|
|
(** The network interface to NetVM. *)
|
|
|
|
|
|
|
|
val listen : t -> Router.t -> unit Lwt.t
|
|
|
|
(** Handle incoming frames from NetVM. *)
|
|
|
|
end
|