package octez-shell-libs
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=ddfb5076eeb0b32ac21c1eed44e8fc86a6743ef18ab23fff02d36e365bb73d61
sha512=d22a827df5146e0aa274df48bc2150b098177ff7e5eab52c6109e867eb0a1f0ec63e6bfbb0e3645a6c2112de3877c91a17df32ccbff301891ce4ba630c997a65
doc/octez-shell-libs.p2p/Tezos_p2p/P2p_pool/Peers/index.html
Module P2p_pool.Peers
Source
type ('msg, 'peer, 'conn) info =
(('msg, 'peer, 'conn) P2p_conn.t, 'peer, 'conn) P2p_peer_state.Info.t
val info :
('msg, 'peer, 'conn) t ->
Tezos_base.TzPervasives.P2p_peer.Id.t ->
('msg, 'peer, 'conn) info option
val get_peer_metadata :
('msg, 'peer, 'conn) t ->
Tezos_base.TzPervasives.P2p_peer.Id.t ->
'peer
val set_peer_metadata :
('msg, 'peer, 'conn) t ->
Tezos_base.TzPervasives.P2p_peer.Id.t ->
'peer ->
unit
val fold_known :
('msg, 'peer, 'conn) t ->
init:'a ->
f:
(Tezos_base.TzPervasives.P2p_peer.Id.t ->
('msg, 'peer, 'conn) info ->
'a ->
'a) ->
'a
fold_known pool ~init ~f
computes (f iN pN ... (f i1 p1 init)...)
where id1 ... idN
are the ids of every known peers and p1 ... pN
the associated peers info.
val iter_known :
(Tezos_base.TzPervasives.P2p_peer.Id.t -> ('msg, 'peer, 'conn) info -> unit) ->
('msg, 'peer, 'conn) t ->
unit
iter_known f pool
applies f
to all known peers of pool
.
val fold_connected :
('msg, 'peer, 'conn) t ->
init:'a ->
f:
(Tezos_base.TzPervasives.P2p_peer.Id.t ->
('msg, 'peer, 'conn) info ->
'a ->
'a) ->
'a
fold_connected pool ~init ~f
computes (f iN pN ... (f i1 p1 init)...)
where id1 ... idN
are the ids of every connected peers and p1 ... pN
the associated peers info.
val add_connected :
('msg, 'peer, 'conn) t ->
Tezos_base.TzPervasives.P2p_peer.Id.t ->
(('msg, 'peer, 'conn) P2p_conn.t, 'peer, 'conn) P2p_peer_state.Info.t ->
unit
val remove_connected :
('msg, 'peer, 'conn) t ->
Tezos_base.TzPervasives.P2p_peer.Id.t ->
unit
ban t peer_id
blacklists this peer_id and terminates connection (if any).
unban t peer_id
removes this peer_id from the black list.
banned t peer_id
returns true
if the peer is in the black list.
get_trusted t peer_id
returns false
if this peer isn't known. Otherwise it calls trusted
for this peer info.
trust t peer_id
sets the peer info for this peer to trusted, and unban
it. The peer is registered first if not known (see register_peer
).
untrust t peer_id
set the peer info for this peer to not trusted. Does nothing if this peer isn't known.
val get_greylisted_list :
('msg, 'peer, 'conn) t ->
Tezos_base.TzPervasives.P2p_peer.Id.t list
get_greylisted_list t
returns the list of all the greylisted peers
val info_of_peer_info :
('msg, 'peer, 'conn) t ->
(('msg, 'peer, 'conn) P2p_conn.t, 'peer, 'conn) P2p_peer_state.Info.t ->
('peer, 'conn) Tezos_base.TzPervasives.P2p_peer.Info.t
info_of_peer_info t peer
returns the peer info from the peer state info.