Module Hub.Switch

module Switch: sig .. end
A Switch is a device that will forward Ethernet frames based on the observed location of the destination.

module R: Hub.Repeater
type mac_entry = {
   mutable addr : Eth.Addr.t option;
   mutable port : int;
}
type t = {
   hub : R.t;
   macs : mac_entry Tools.OrdArray.t;
   macs_h : int Tools.BitHash.t;
}
val make : int -> int -> t
val forward_from : int -> t -> Bitstring.bitstring -> unit
val write : int -> t -> Bitstring.bitstring -> unit
val set_read : int -> t -> (Bitstring.bitstring -> unit) -> unit
val to_dev : int -> t -> Tools.dev
Turns a port into a device