Module Trust_system

The trust system, instantiated with Coda-specific stuff.

module Actions : sig ... end
module Banned_status : sig ... end
module Peer_status : sig ... end
module Peer_trust : sig ... end
include module type of struct include Peer_trust end
type t
val create : string -> t
val null : unit -> t
val upcall_pipe : t -> [ `Ban of Network_peer.Peer.t * Core.Time.t | `Heartbeat of Network_peer.Peer.t ] Pipe_lib.Strict_pipe.Reader.t
val record : t -> Logger.t -> Network_peer.Peer.t -> Actions.t -> unit Async_kernel.Deferred.t
val lookup_ip : t -> Core.Unix.Inet_addr.Blocking_sexp.t -> (Network_peer.Peer.t * Peer_status.t) list
val reset_ip : t -> Core.Unix.Inet_addr.Blocking_sexp.t -> (Network_peer.Peer.t * Peer_status.t) list
val peer_statuses : t -> (Network_peer.Peer.t * Peer_status.t) list
val close : t -> unit
module For_tests = Peer_trust.For_tests
val record_envelope_sender : t -> Logger.t -> Network_peer.Envelope.Sender.t -> Actions.t -> unit Async_kernel.Deferred.t