diff --git a/src/node/main/node_config_file.ml b/src/node/main/node_config_file.ml index 8fd93c050..f6bfa39c4 100644 --- a/src/node/main/node_config_file.ml +++ b/src/node/main/node_config_file.ml @@ -69,9 +69,9 @@ let default_net_limits : P2p.limits = { incoming_message_queue_size = None ; outgoing_message_queue_size = None ; known_points_history_size = 500 ; - known_gids_history_size = 500 ; + known_peer_ids_history_size = 500 ; max_known_points = Some (400, 300) ; - max_known_gids = Some (400, 300) ; + max_known_peer_ids = Some (400, 300) ; } let default_net = { @@ -113,8 +113,8 @@ let limit : P2p.limits Data_encoding.t = read_buffer_size ; read_queue_size ; write_queue_size ; incoming_app_message_queue_size ; incoming_message_queue_size ; outgoing_message_queue_size ; - known_points_history_size ; known_gids_history_size ; - max_known_points ; max_known_gids ; + known_points_history_size ; known_peer_ids_history_size ; + max_known_points ; max_known_peer_ids ; } -> ( ( authentification_timeout, min_connections, expected_connections, max_connections, backlog, max_incoming_connections, @@ -122,8 +122,8 @@ let limit : P2p.limits Data_encoding.t = ( read_buffer_size, read_queue_size, write_queue_size, incoming_app_message_queue_size, incoming_message_queue_size, outgoing_message_queue_size, - known_points_history_size, known_gids_history_size, - max_known_points, max_known_gids + known_points_history_size, known_peer_ids_history_size, + max_known_points, max_known_peer_ids ))) (fun ( ( authentification_timeout, min_connections, expected_connections, max_connections, backlog, max_incoming_connections, @@ -131,8 +131,8 @@ let limit : P2p.limits Data_encoding.t = ( read_buffer_size, read_queue_size, write_queue_size, incoming_app_message_queue_size, incoming_message_queue_size, outgoing_message_queue_size, - known_points_history_size, known_gids_history_size, - max_known_points, max_known_gids + known_points_history_size, known_peer_ids_history_size, + max_known_points, max_known_peer_ids ) ) -> { authentification_timeout ; min_connections ; expected_connections ; max_connections ; backlog ; max_incoming_connections ; @@ -140,8 +140,8 @@ let limit : P2p.limits Data_encoding.t = read_buffer_size ; read_queue_size ; write_queue_size ; incoming_app_message_queue_size ; incoming_message_queue_size ; outgoing_message_queue_size ; - known_points_history_size ; known_gids_history_size ; - max_known_points ; max_known_gids + known_points_history_size ; known_peer_ids_history_size ; + max_known_points ; max_known_peer_ids }) (merge_objs (obj8 @@ -169,10 +169,10 @@ let limit : P2p.limits Data_encoding.t = (opt "outgoing-message-queue-size" int31) (dft "known_points_history_size" uint16 default_net_limits.known_points_history_size) - (dft "known_gids_history_size" uint16 + (dft "known_peer_ids_history_size" uint16 default_net_limits.known_points_history_size) (opt "max_known_points" (tup2 uint16 uint16)) - (opt "max_known_gids" (tup2 uint16 uint16)) + (opt "max_known_peer_ids" (tup2 uint16 uint16)) )) let net = @@ -303,9 +303,9 @@ let update max_known_points = Utils.first_some peer_table_size cfg.net.limits.max_known_points ; - max_known_gids = + max_known_peer_ids = Utils.first_some - peer_table_size cfg.net.limits.max_known_gids ; + peer_table_size cfg.net.limits.max_known_peer_ids ; } in let net : net = { expected_pow = diff --git a/src/node/main/node_identity_command.ml b/src/node/main/node_identity_command.ml index 49333ef8c..4480c81bb 100644 --- a/src/node/main/node_identity_command.ml +++ b/src/node/main/node_identity_command.ml @@ -15,7 +15,7 @@ let identity_file data_dir = data_dir // Node_identity_file.default_name let show { Node_config_file.data_dir } = Node_identity_file.read (identity_file data_dir) >>=? fun id -> - Format.printf "Gid: %a.@." P2p_types.Gid.pp id.gid ; + Format.printf "Peer_id: %a.@." P2p_types.Peer_id.pp id.peer_id ; return () let generate { Node_config_file.data_dir ; net } = @@ -30,15 +30,15 @@ let generate { Node_config_file.data_dir ; net } = Node_identity_file.write identity_file id >>=? fun () -> Format.eprintf "Stored the new identity (%a) into '%s'.@." - P2p.Gid.pp id.gid identity_file ; + P2p.Peer_id.pp id.peer_id identity_file ; return () let check { Node_config_file.data_dir ; net = { expected_pow } } = Node_identity_file.read ~expected_pow (identity_file data_dir) >>=? fun id -> Format.printf - "Gid: %a. Proof of work is higher than %.2f.@." - P2p_types.Gid.pp id.gid expected_pow ; + "Peer_id: %a. Proof of work is higher than %.2f.@." + P2p_types.Peer_id.pp id.peer_id expected_pow ; return () (** Main *) diff --git a/src/node/main/node_run_command.ml b/src/node/main/node_run_command.ml index 8ae21c09b..4d922ed73 100644 --- a/src/node/main/node_run_command.ml +++ b/src/node/main/node_run_command.ml @@ -85,7 +85,7 @@ let init_node ?sandbox (config : Node_config_file.t) = Node_identity_file.default_name) >>=? fun identity -> lwt_log_notice "Peer's global id: %a" - P2p.Gid.pp identity.gid >>= fun () -> + P2p.Peer_id.pp identity.peer_id >>= fun () -> (* TODO "WARN" when pow is below our expectation. *) begin match config.net.listen_addr with diff --git a/src/node/net/p2p.ml b/src/node/net/p2p.ml index 20de33019..fad387862 100644 --- a/src/node/net/p2p.ml +++ b/src/node/net/p2p.ml @@ -62,9 +62,9 @@ type limits = { incoming_message_queue_size : int option ; outgoing_message_queue_size : int option ; - known_gids_history_size : int ; + known_peer_ids_history_size : int ; known_points_history_size : int ; - max_known_gids : (int * int) option ; + max_known_peer_ids : (int * int) option ; max_known_points : (int * int) option ; } @@ -96,10 +96,10 @@ let create_connection_pool config limits meta_cfg msg_cfg io_sched = incoming_app_message_queue_size = limits.incoming_app_message_queue_size ; incoming_message_queue_size = limits.incoming_message_queue_size ; outgoing_message_queue_size = limits.outgoing_message_queue_size ; - known_gids_history_size = limits.known_gids_history_size ; + known_peer_ids_history_size = limits.known_peer_ids_history_size ; known_points_history_size = limits.known_points_history_size ; max_known_points = limits.max_known_points ; - max_known_gids = limits.max_known_gids ; + max_known_peer_ids = limits.max_known_peer_ids ; } in let pool = @@ -173,7 +173,7 @@ module Real = struct welcome ; } - let gid { config } = config.identity.gid + let peer_id { config } = config.identity.peer_id let maintain { maintenance } () = P2p_maintenance.maintain maintenance @@ -191,9 +191,9 @@ module Real = struct let connections { pool } () = P2p_connection_pool.fold_connections pool - ~init:[] ~f:(fun _gid c acc -> c :: acc) - let find_connection { pool } gid = - P2p_connection_pool.Gids.find_connection pool gid + ~init:[] ~f:(fun _peer_id c acc -> c :: acc) + let find_connection { pool } peer_id = + P2p_connection_pool.Peer_ids.find_connection pool peer_id let connection_info _net conn = P2p_connection_pool.connection_info conn let connection_stat _net conn = @@ -201,9 +201,9 @@ module Real = struct let global_stat { pool } () = P2p_connection_pool.pool_stat pool let set_metadata { pool } conn meta = - P2p_connection_pool.Gids.set_metadata pool conn meta + P2p_connection_pool.Peer_ids.set_metadata pool conn meta let get_metadata { pool } conn = - P2p_connection_pool.Gids.get_metadata pool conn + P2p_connection_pool.Peer_ids.get_metadata pool conn let rec recv _net conn = P2p_connection_pool.read conn >>=? fun msg -> @@ -216,7 +216,7 @@ module Real = struct let pipes = P2p_connection_pool.fold_connections net.pool ~init:[] - ~f:begin fun _gid conn acc -> + ~f:begin fun _peer_id conn acc -> (P2p_connection_pool.is_readable conn >>= function | Ok () -> Lwt.return (Some conn) | Error _ -> Lwt_utils.never_ending) :: acc @@ -286,7 +286,7 @@ module Fake = struct } let connection_info = { Connection_info.incoming = false ; - gid = id.gid ; + peer_id = id.peer_id ; id_point = (Ipaddr.V6.unspecified, None) ; remote_socket_port = 0 ; versions = [] ; @@ -295,17 +295,17 @@ module Fake = struct end type ('msg, 'meta) t = { - gid : Gid.t ; + peer_id : Peer_id.t ; maintain : unit -> unit Lwt.t ; roll : unit -> unit Lwt.t ; shutdown : unit -> unit Lwt.t ; connections : unit -> ('msg, 'meta) connection list ; - find_connection : Gid.t -> ('msg, 'meta) connection option ; + find_connection : Peer_id.t -> ('msg, 'meta) connection option ; connection_info : ('msg, 'meta) connection -> Connection_info.t ; connection_stat : ('msg, 'meta) connection -> Stat.t ; global_stat : unit -> Stat.t ; - get_metadata : Gid.t -> 'meta option ; - set_metadata : Gid.t -> 'meta -> unit ; + get_metadata : Peer_id.t -> 'meta option ; + set_metadata : Peer_id.t -> 'meta -> unit ; recv : ('msg, 'meta) connection -> 'msg tzresult Lwt.t ; recv_any : unit -> (('msg, 'meta) connection * 'msg) Lwt.t ; send : ('msg, 'meta) connection -> 'msg -> unit Lwt.t ; @@ -318,7 +318,7 @@ type ('msg, 'meta) net = ('msg, 'meta) t let create ~config ~limits meta_cfg msg_cfg = Real.create ~config ~limits meta_cfg msg_cfg >>= fun net -> Lwt.return { - gid = Real.gid net ; + peer_id = Real.peer_id net ; maintain = Real.maintain net ; roll = Real.roll net ; shutdown = Real.shutdown net ; @@ -338,7 +338,7 @@ let create ~config ~limits meta_cfg msg_cfg = } let faked_network = { - gid = Fake.id.gid ; + peer_id = Fake.id.peer_id ; maintain = Lwt.return ; roll = Lwt.return ; shutdown = Lwt.return ; @@ -357,7 +357,7 @@ let faked_network = { pool = None } -let gid net = net.gid +let peer_id net = net.peer_id let maintain net = net.maintain () let roll net = net.roll () let shutdown net = net.shutdown () @@ -404,19 +404,19 @@ module RPC = struct P2p_connection_pool.connect ~timeout pool point >>|? ignore module Connection = struct - let info net gid = + let info net peer_id = match net.pool with | None -> None | Some pool -> map_option - (P2p_connection_pool.Gids.find_connection pool gid) + (P2p_connection_pool.Peer_ids.find_connection pool peer_id) ~f:P2p_connection_pool.connection_info - let kick net gid wait = + let kick net peer_id wait = match net.pool with | None -> Lwt.return_unit | Some pool -> - match P2p_connection_pool.Gids.find_connection pool gid with + match P2p_connection_pool.Peer_ids.find_connection pool peer_id with | None -> Lwt.return_unit | Some conn -> P2p_connection_pool.disconnect ~wait conn @@ -426,7 +426,7 @@ module RPC = struct | Some pool -> P2p_connection_pool.fold_connections pool ~init:[] - ~f:begin fun _gid c acc -> + ~f:begin fun _peer_id c acc -> P2p_connection_pool.connection_info c :: acc end @@ -456,33 +456,33 @@ module RPC = struct trusted : bool ; greylisted_end : Time.t ; state : state ; - gid : Gid.t option ; + peer_id : Peer_id.t option ; last_failed_connection : Time.t option ; - last_rejected_connection : (Gid.t * Time.t) option ; - last_established_connection : (Gid.t * Time.t) option ; - last_disconnection : (Gid.t * Time.t) option ; - last_seen : (Gid.t * Time.t) option ; + last_rejected_connection : (Peer_id.t * Time.t) option ; + last_established_connection : (Peer_id.t * Time.t) option ; + last_disconnection : (Peer_id.t * Time.t) option ; + last_seen : (Peer_id.t * Time.t) option ; last_miss : Time.t option ; } let info_encoding = let open Data_encoding in conv - (fun { trusted ; greylisted_end ; state ; gid ; + (fun { trusted ; greylisted_end ; state ; peer_id ; last_failed_connection ; last_rejected_connection ; last_established_connection ; last_disconnection ; last_seen ; last_miss ; } -> - (trusted, greylisted_end, state, gid, + (trusted, greylisted_end, state, peer_id, last_failed_connection, last_rejected_connection, last_established_connection, last_disconnection, last_seen, last_miss) ) - (fun (trusted, greylisted_end, state, gid, + (fun (trusted, greylisted_end, state, peer_id, last_failed_connection, last_rejected_connection, last_established_connection, last_disconnection, last_seen, last_miss) -> - { trusted ; greylisted_end ; state ; gid ; + { trusted ; greylisted_end ; state ; peer_id ; last_failed_connection ; last_rejected_connection ; last_established_connection ; last_disconnection ; last_seen ; last_miss ; @@ -492,25 +492,25 @@ module RPC = struct (req "trusted" bool) (dft "greylisted_end" Time.encoding Time.epoch) (req "state" state_encoding) - (opt "gid" Gid.encoding) + (opt "peer_id" Peer_id.encoding) (opt "last_failed_connection" Time.encoding) - (opt "last_rejected_connection" (tup2 Gid.encoding Time.encoding)) - (opt "last_established_connection" (tup2 Gid.encoding Time.encoding)) - (opt "last_disconnection" (tup2 Gid.encoding Time.encoding)) - (opt "last_seen" (tup2 Gid.encoding Time.encoding)) + (opt "last_rejected_connection" (tup2 Peer_id.encoding Time.encoding)) + (opt "last_established_connection" (tup2 Peer_id.encoding Time.encoding)) + (opt "last_disconnection" (tup2 Peer_id.encoding Time.encoding)) + (opt "last_seen" (tup2 Peer_id.encoding Time.encoding)) (opt "last_miss" Time.encoding)) let info_of_point_info i = let open P2p_connection_pool in let open P2p_connection_pool_types in - let state, gid = match Point_info.State.get i with + let state, peer_id = match Point_info.State.get i with | Requested _ -> Requested, None - | Accepted { current_gid } -> Accepted, Some current_gid - | Running { current_gid } -> Running, Some current_gid + | Accepted { current_peer_id } -> Accepted, Some current_peer_id + | Running { current_peer_id } -> Running, Some current_peer_id | Disconnected -> Disconnected, None in Point_info.{ trusted = trusted i ; - state ; gid ; + state ; peer_id ; greylisted_end = greylisted_end i ; last_failed_connection = last_failed_connection i ; last_rejected_connection = last_rejected_connection i ; @@ -568,7 +568,7 @@ module RPC = struct end - module Gid = struct + module Peer_id = struct type state = | Accepted | Running @@ -631,22 +631,22 @@ module RPC = struct (opt "last_seen" (tup2 Id_point.encoding Time.encoding)) (opt "last_miss" (tup2 Id_point.encoding Time.encoding)))) - let info_of_gid_info pool i = + let info_of_peer_info pool i = let open P2p_connection_pool in let open P2p_connection_pool_types in - let state, id_point = match Gid_info.State.get i with + let state, id_point = match Peer_info.State.get i with | Accepted { current_point } -> Accepted, Some current_point | Running { current_point } -> Running, Some current_point | Disconnected -> Disconnected, None in - let gid = Gid_info.gid i in - let meta = Gid_info.metadata i in + let peer_id = Peer_info.peer_id i in + let meta = Peer_info.metadata i in let score = P2p_connection_pool.score pool meta in let stat = - match P2p_connection_pool.Gids.find_connection pool gid with + match P2p_connection_pool.Peer_ids.find_connection pool peer_id with | None -> Stat.empty | Some conn -> P2p_connection_pool.connection_stat conn - in Gid_info.{ + in Peer_info.{ score ; trusted = trusted i ; state ; @@ -660,49 +660,49 @@ module RPC = struct last_miss = last_miss i ; } - let info net gid = + let info net peer_id = match net.pool with | None -> None | Some pool -> begin - match P2p_connection_pool.Gids.info pool gid with - | Some info -> Some (info_of_gid_info pool info) + match P2p_connection_pool.Peer_ids.info pool peer_id with + | Some info -> Some (info_of_peer_info pool info) | None -> None end - module Event = P2p_connection_pool_types.Gid_info.Event + module Event = P2p_connection_pool_types.Peer_info.Event - let events ?(max=max_int) ?(rev=false) net gid = + let events ?(max=max_int) ?(rev=false) net peer_id = match net.pool with | None -> [] | Some pool -> unopt_map - (P2p_connection_pool.Gids.info pool gid) + (P2p_connection_pool.Peer_ids.info pool peer_id) ~default:[] ~f:begin fun gi -> - let evts = P2p_connection_pool_types.Gid_info.fold_events gi + let evts = P2p_connection_pool_types.Peer_info.fold_events gi ~init:[] ~f:(fun a e -> e :: a) in (if rev then list_rev_sub else list_sub) evts max end - let watch net gid = + let watch net peer_id = match net.pool with | None -> raise Not_found | Some pool -> - match P2p_connection_pool.Gids.info pool gid with + match P2p_connection_pool.Peer_ids.info pool peer_id with | None -> raise Not_found - | Some gi -> P2p_connection_pool_types.Gid_info.watch gi + | Some gi -> P2p_connection_pool_types.Peer_info.watch gi let infos ?(restrict=[]) net = match net.pool with | None -> [] | Some pool -> - P2p_connection_pool.Gids.fold_known pool + P2p_connection_pool.Peer_ids.fold_known pool ~init:[] - ~f:begin fun gid i a -> - let info = info_of_gid_info pool i in + ~f:begin fun peer_id i a -> + let info = info_of_peer_info pool i in match restrict with - | [] -> (gid, info) :: a - | _ when List.mem info.state restrict -> (gid, info) :: a + | [] -> (peer_id, info) :: a + | _ when List.mem info.state restrict -> (peer_id, info) :: a | _ -> a end diff --git a/src/node/net/p2p.mli b/src/node/net/p2p.mli index f81469cd5..7ff8637a2 100644 --- a/src/node/net/p2p.mli +++ b/src/node/net/p2p.mli @@ -17,7 +17,7 @@ type port = int module Version = P2p_types.Version (** A global identifier for a peer, a.k.a. an identity *) -module Gid = P2p_types.Gid +module Peer_id = P2p_types.Peer_id module Identity = P2p_types.Identity @@ -64,7 +64,7 @@ type config = { peers_file : string ; (** The path to the JSON file where the metadata associated to - gids are loaded / stored. *) + peer_ids are loaded / stored. *) closed_network : bool ; (** If [true], the only accepted connections are from peers whose @@ -115,11 +115,11 @@ type limits = { outgoing_message_queue_size : int option ; (** Various bounds for internal queues. *) - known_gids_history_size : int ; + known_peer_ids_history_size : int ; known_points_history_size : int ; (** Size of circular log buffers, in number of events recorded. *) - max_known_gids : (int * int) option ; + max_known_peer_ids : (int * int) option ; max_known_points : (int * int) option ; (** Optional limitation of internal hashtables (max, target) *) } @@ -136,8 +136,8 @@ val create : config:config -> limits:limits -> 'meta meta_config -> 'msg message_config -> ('msg, 'meta) net Lwt.t -(** Return one's gid *) -val gid : ('msg, 'meta) net -> Gid.t +(** Return one's peer_id *) +val peer_id : ('msg, 'meta) net -> Peer_id.t (** A maintenance operation : try and reach the ideal number of peers *) val maintain : ('msg, 'meta) net -> unit Lwt.t @@ -154,8 +154,8 @@ type ('msg, 'meta) connection (** Access the domain of active peers *) val connections : ('msg, 'meta) net -> ('msg, 'meta) connection list -(** Return the active peer with identity [gid] *) -val find_connection : ('msg, 'meta) net -> Gid.t -> ('msg, 'meta) connection option +(** Return the active peer with identity [peer_id] *) +val find_connection : ('msg, 'meta) net -> Peer_id.t -> ('msg, 'meta) connection option (** Access the info of an active peer, if available *) val connection_info : @@ -165,8 +165,8 @@ val connection_stat : val global_stat : ('msg, 'meta) net -> Stat.t (** Accessors for meta information about a global identifier *) -val get_metadata : ('msg, 'meta) net -> Gid.t -> 'meta option -val set_metadata : ('msg, 'meta) net -> Gid.t -> 'meta -> unit +val get_metadata : ('msg, 'meta) net -> Peer_id.t -> 'meta option +val set_metadata : ('msg, 'meta) net -> Peer_id.t -> 'meta -> unit (** Wait for a message from a given connection. *) val recv : @@ -199,8 +199,8 @@ module RPC : sig val connect : ('msg, 'meta) net -> Point.t -> float -> unit tzresult Lwt.t module Connection : sig - val info : ('msg, 'meta) net -> Gid.t -> Connection_info.t option - val kick : ('msg, 'meta) net -> Gid.t -> bool -> unit Lwt.t + val info : ('msg, 'meta) net -> Peer_id.t -> Connection_info.t option + val kick : ('msg, 'meta) net -> Peer_id.t -> bool -> unit Lwt.t val list : ('msg, 'meta) net -> Connection_info.t list val count : ('msg, 'meta) net -> int end @@ -219,12 +219,12 @@ module RPC : sig trusted : bool ; greylisted_end : Time.t ; state : state ; - gid : Gid.t option ; + peer_id : Peer_id.t option ; last_failed_connection : Time.t option ; - last_rejected_connection : (Gid.t * Time.t) option ; - last_established_connection : (Gid.t * Time.t) option ; - last_disconnection : (Gid.t * Time.t) option ; - last_seen : (Gid.t * Time.t) option ; + last_rejected_connection : (Peer_id.t * Time.t) option ; + last_established_connection : (Peer_id.t * Time.t) option ; + last_disconnection : (Peer_id.t * Time.t) option ; + last_seen : (Peer_id.t * Time.t) option ; last_miss : Time.t option ; } @@ -242,7 +242,7 @@ module RPC : sig ('msg, 'meta) net -> Point.t -> Event.t Lwt_stream.t * Watcher.stopper end - module Gid : sig + module Peer_id : sig type state = | Accepted @@ -266,12 +266,16 @@ module RPC : sig } val info_encoding : info Data_encoding.t - module Event = P2p_connection_pool_types.Gid_info.Event + module Event = P2p_connection_pool_types.Peer_info.Event - val info : ('msg, 'meta) net -> Gid.t -> info option - val infos : ?restrict:state list -> ('msg, 'meta) net -> (Gid.t * info) list - val events : ?max:int -> ?rev:bool -> ('msg, 'meta) net -> Gid.t -> Event.t list - val watch : ('msg, 'meta) net -> Gid.t -> Event.t Lwt_stream.t * Watcher.stopper + val info : + ('msg, 'meta) net -> Peer_id.t -> info option + val infos : + ?restrict:state list -> ('msg, 'meta) net -> (Peer_id.t * info) list + val events : + ?max:int -> ?rev:bool -> ('msg, 'meta) net -> Peer_id.t -> Event.t list + val watch : + ('msg, 'meta) net -> Peer_id.t -> Event.t Lwt_stream.t * Watcher.stopper end diff --git a/src/node/net/p2p_connection.ml b/src/node/net/p2p_connection.ml index 1fd08adea..5541a6afa 100644 --- a/src/node/net/p2p_connection.ml +++ b/src/node/net/p2p_connection.ml @@ -29,7 +29,7 @@ type error += Encoding_error type error += Rejected type error += Decoding_error type error += Myself of Id_point.t -type error += Not_enough_proof_of_work of Gid.t +type error += Not_enough_proof_of_work of Peer_id.t type error += Invalid_auth module Crypto = struct @@ -186,18 +186,19 @@ let authenticate let remote_listening_port = if incoming then msg.port else Some remote_socket_port in let id_point = remote_addr, remote_listening_port in - let remote_gid = Crypto_box.hash msg.public_key in + let remote_peer_id = Crypto_box.hash msg.public_key in fail_unless - (remote_gid <> identity.Identity.gid) + (remote_peer_id <> identity.Identity.peer_id) (Myself id_point) >>=? fun () -> fail_unless (Crypto_box.check_proof_of_work msg.public_key msg.proof_of_work_stamp proof_of_work_target) - (Not_enough_proof_of_work remote_gid) >>=? fun () -> + (Not_enough_proof_of_work remote_peer_id) >>=? fun () -> let channel_key = Crypto_box.precompute identity.Identity.secret_key msg.public_key in let info = - { Connection_info.gid = remote_gid ; versions = msg.versions ; incoming ; + { Connection_info.peer_id = remote_peer_id ; + versions = msg.versions ; incoming ; id_point ; remote_socket_port ;} in let cryptobox_data = { Crypto.channel_key ; local_nonce ; diff --git a/src/node/net/p2p_connection.mli b/src/node/net/p2p_connection.mli index 4a4cc8b58..538ffd440 100644 --- a/src/node/net/p2p_connection.mli +++ b/src/node/net/p2p_connection.mli @@ -25,7 +25,7 @@ type error += Encoding_error type error += Decoding_error type error += Rejected type error += Myself of Id_point.t -type error += Not_enough_proof_of_work of Gid.t +type error += Not_enough_proof_of_work of Peer_id.t type error += Invalid_auth type authenticated_fd diff --git a/src/node/net/p2p_connection_pool.ml b/src/node/net/p2p_connection_pool.ml index a47a1538f..ae449876b 100644 --- a/src/node/net/p2p_connection_pool.ml +++ b/src/node/net/p2p_connection_pool.ml @@ -11,9 +11,9 @@ (* TODO do not recompute list_known_points at each requests... but only once in a while, e.g. every minutes or when a point - or the associated gid is blacklisted. *) + or the associated peer_id is blacklisted. *) -(* TODO allow to track "requested gids" when we reconnect to a point. *) +(* TODO allow to track "requested peer_ids" when we reconnect to a point. *) open P2p_types open P2p_connection_pool_types @@ -130,19 +130,19 @@ module LogEvent = struct | Too_few_connections | Too_many_connections | New_point of Point.t - | New_peer of Gid.t + | New_peer of Peer_id.t | Incoming_connection of Point.t | Outgoing_connection of Point.t | Authentication_failed of Point.t - | Accepting_request of Point.t * Id_point.t * Gid.t - | Rejecting_request of Point.t * Id_point.t * Gid.t - | Request_rejected of Point.t * (Id_point.t * Gid.t) option - | Connection_established of Id_point.t * Gid.t - | Disconnection of Gid.t - | External_disconnection of Gid.t + | Accepting_request of Point.t * Id_point.t * Peer_id.t + | Rejecting_request of Point.t * Id_point.t * Peer_id.t + | Request_rejected of Point.t * (Id_point.t * Peer_id.t) option + | Connection_established of Id_point.t * Peer_id.t + | Disconnection of Peer_id.t + | External_disconnection of Peer_id.t | Gc_points - | Gc_gids + | Gc_peer_ids let encoding = let open Data_encoding in @@ -162,7 +162,7 @@ module LogEvent = struct (function New_point p -> Some p | _ -> None) (fun p -> New_point p) ; case ~tag:3 (branch_encoding "new_peer" - (obj1 (req "gid" Gid.encoding))) + (obj1 (req "peer_id" Peer_id.encoding))) (function New_peer p -> Some p | _ -> None) (fun p -> New_peer p) ; case ~tag:4 (branch_encoding "incoming_connection" @@ -181,42 +181,42 @@ module LogEvent = struct (obj3 (req "point" Point.encoding) (req "id_point" Id_point.encoding) - (req "gid" Gid.encoding))) + (req "peer_id" Peer_id.encoding))) (function Accepting_request (p, id_p, g) -> Some (p, id_p, g) | _ -> None) (fun (p, id_p, g) -> Accepting_request (p, id_p, g)) ; case ~tag:8 (branch_encoding "rejecting_request" (obj3 (req "point" Point.encoding) (req "id_point" Id_point.encoding) - (req "gid" Gid.encoding))) + (req "peer_id" Peer_id.encoding))) (function Rejecting_request (p, id_p, g) -> Some (p, id_p, g) | _ -> None) (fun (p, id_p, g) -> Rejecting_request (p, id_p, g)) ; case ~tag:9 (branch_encoding "request_rejected" (obj2 (req "point" Point.encoding) - (opt "identity" (tup2 Id_point.encoding Gid.encoding)))) + (opt "identity" (tup2 Id_point.encoding Peer_id.encoding)))) (function Request_rejected (p, id) -> Some (p, id) | _ -> None) (fun (p, id) -> Request_rejected (p, id)) ; case ~tag:10 (branch_encoding "connection_established" (obj2 (req "id_point" Id_point.encoding) - (req "gid" Gid.encoding))) + (req "peer_id" Peer_id.encoding))) (function Connection_established (id_p, g) -> Some (id_p, g) | _ -> None) (fun (id_p, g) -> Connection_established (id_p, g)) ; case ~tag:11 (branch_encoding "disconnection" - (obj1 (req "gid" Gid.encoding))) + (obj1 (req "peer_id" Peer_id.encoding))) (function Disconnection g -> Some g | _ -> None) (fun g -> Disconnection g) ; case ~tag:12 (branch_encoding "external_disconnection" - (obj1 (req "gid" Gid.encoding))) + (obj1 (req "peer_id" Peer_id.encoding))) (function External_disconnection g -> Some g | _ -> None) (fun g -> External_disconnection g) ; case ~tag:13 (branch_encoding "gc_points" empty) (function Gc_points -> Some () | _ -> None) (fun () -> Gc_points) ; - case ~tag:14 (branch_encoding "gc_gids" empty) - (function Gc_gids -> Some () | _ -> None) - (fun () -> Gc_gids) ; + case ~tag:14 (branch_encoding "gc_peer_ids" empty) + (function Gc_peer_ids -> Some () | _ -> None) + (fun () -> Gc_peer_ids) ; ] let log watcher event = Watcher.notify watcher event @@ -224,23 +224,23 @@ module LogEvent = struct let too_few_connections watcher = log watcher Too_few_connections let too_many_connections watcher = log watcher Too_many_connections let new_point watcher ~point = log watcher (New_point point) - let new_peer watcher ~gid = log watcher (New_peer gid) + let new_peer watcher ~peer_id = log watcher (New_peer peer_id) let incoming_connection watcher ~point = log watcher (Incoming_connection point) let outgoing_connection watcher ~point = log watcher (Outgoing_connection point) let authentication_failed watcher ~point = log watcher (Authentication_failed point) - let accepting_request watcher ~id_point ~point ~gid = - log watcher (Accepting_request (point, id_point, gid)) - let rejecting_request watcher ~id_point ~point ~gid = - log watcher (Rejecting_request (point, id_point, gid)) + let accepting_request watcher ~id_point ~point ~peer_id = + log watcher (Accepting_request (point, id_point, peer_id)) + let rejecting_request watcher ~id_point ~point ~peer_id = + log watcher (Rejecting_request (point, id_point, peer_id)) let request_rejected watcher ?credentials ~point = log watcher (Request_rejected (point, credentials)) - let connection_established watcher ~id_point ~gid = - log watcher (Connection_established (id_point, gid)) - let disconnection watcher ~is_external ~gid = - log watcher (if is_external then External_disconnection gid - else Disconnection gid) + let connection_established watcher ~id_point ~peer_id = + log watcher (Connection_established (id_point, peer_id)) + let disconnection watcher ~is_external ~peer_id = + log watcher (if is_external then External_disconnection peer_id + else Disconnection peer_id) let gc_points watcher = log watcher Gc_points - let gc_gids watcher = log watcher Gc_gids + let gc_peer_ids watcher = log watcher Gc_peer_ids end type config = { @@ -262,10 +262,10 @@ type config = { incoming_message_queue_size : int option ; outgoing_message_queue_size : int option ; - known_gids_history_size : int ; + known_peer_ids_history_size : int ; known_points_history_size : int ; max_known_points : (int * int) option ; (* max, gc target *) - max_known_gids : (int * int) option ; (* max, gc target *) + max_known_peer_ids : (int * int) option ; (* max, gc target *) } type 'meta meta_config = { @@ -284,8 +284,8 @@ type ('msg, 'meta) t = { meta_config : 'meta meta_config ; message_config : 'msg message_config ; my_id_points : unit Point.Table.t ; - known_gids : (('msg, 'meta) connection, 'meta) Gid_info.t Gid.Table.t ; - connected_gids : (('msg, 'meta) connection, 'meta) Gid_info.t Gid.Table.t ; + known_peer_ids : (('msg, 'meta) connection, 'meta) Peer_info.t Peer_id.Table.t ; + connected_peer_ids : (('msg, 'meta) connection, 'meta) Peer_info.t Peer_id.Table.t ; known_points : ('msg, 'meta) connection Point_info.t Point.Table.t ; connected_points : ('msg, 'meta) connection Point_info.t Point.Table.t ; incoming : Canceler.t Point.Table.t ; @@ -307,7 +307,7 @@ and ('msg, 'meta) connection = { canceler : Canceler.t ; messages : (int * 'msg) Lwt_pipe.t ; conn : 'msg Message.t P2p_connection.t ; - gid_info : (('msg, 'meta) connection, 'meta) Gid_info.t ; + peer_info : (('msg, 'meta) connection, 'meta) Peer_info.t ; point_info : ('msg, 'meta) connection Point_info.t option ; answerer : 'msg Answerer.t ; mutable wait_close : bool ; @@ -366,57 +366,57 @@ let register_point pool ?trusted (addr, port as point) = | pi -> pi -(* Bounded table used to garbage collect gid infos when needed. The - strategy used is to remove the info of the gid with the lowest +(* Bounded table used to garbage collect peer_id infos when needed. The + strategy used is to remove the info of the peer_id with the lowest score first. In case of equality, the info of the most recent added - gid is removed. The rationale behind this choice is that in the + peer_id is removed. The rationale behind this choice is that in the case of a flood attack, the newly added infos will probably belong - to gids with the same (low) score and removing the most recent ones - ensure that older (and probably legit) gid infos are kept. *) -module GcGidSet = Utils.Bounded(struct - type t = float * Time.t * Gid.t + to peer_ids with the same (low) score and removing the most recent ones + ensure that older (and probably legit) peer_id infos are kept. *) +module GcPeer_idSet = Utils.Bounded(struct + type t = float * Time.t * Peer_id.t let compare (s, t, _) (s', t', _) = let score_cmp = Pervasives.compare s s' in if score_cmp = 0 then Time.compare t t' else - score_cmp end) -let gc_gids ({ meta_config = { score } ; - config = { max_known_gids } ; - known_gids ; } as pool) = - match max_known_gids with +let gc_peer_ids ({ meta_config = { score } ; + config = { max_known_peer_ids } ; + known_peer_ids ; } as pool) = + match max_known_peer_ids with | None -> () | Some (_, target) -> - let table = GcGidSet.create target in - Gid.Table.iter (fun gid gid_info -> - let created = Gid_info.created gid_info in - let score = score @@ Gid_info.metadata gid_info in - GcGidSet.insert (score, created, gid) table - ) known_gids ; - let to_remove = GcGidSet.get table in - ListLabels.iter to_remove ~f:begin fun (_, _, gid) -> - Gid.Table.remove known_gids gid + let table = GcPeer_idSet.create target in + Peer_id.Table.iter (fun peer_id peer_info -> + let created = Peer_info.created peer_info in + let score = score @@ Peer_info.metadata peer_info in + GcPeer_idSet.insert (score, created, peer_id) table + ) known_peer_ids ; + let to_remove = GcPeer_idSet.get table in + ListLabels.iter to_remove ~f:begin fun (_, _, peer_id) -> + Peer_id.Table.remove known_peer_ids peer_id end ; - LogEvent.gc_gids pool.watcher + LogEvent.gc_peer_ids pool.watcher -let register_peer pool gid = - match Gid.Table.find pool.known_gids gid with +let register_peer pool peer_id = + match Peer_id.Table.find pool.known_peer_ids peer_id with | exception Not_found -> Lwt_condition.broadcast pool.events.new_peer () ; - let peer = Gid_info.create gid ~metadata:pool.meta_config.initial in - iter_option pool.config.max_known_gids ~f:begin fun (max, _) -> - if Gid.Table.length pool.known_gids >= max then gc_gids pool + let peer = Peer_info.create peer_id ~metadata:pool.meta_config.initial in + iter_option pool.config.max_known_peer_ids ~f:begin fun (max, _) -> + if Peer_id.Table.length pool.known_peer_ids >= max then gc_peer_ids pool end ; - Gid.Table.add pool.known_gids gid peer ; - LogEvent.new_peer pool.watcher gid ; + Peer_id.Table.add pool.known_peer_ids peer_id peer ; + LogEvent.new_peer pool.watcher peer_id ; peer | peer -> peer -let register_new_point pool _gid point = +let register_new_point pool _peer_id point = if not (Point.Table.mem pool.my_id_points point) then ignore (register_point pool point) -let register_new_points pool gid points = - List.iter (register_new_point pool gid) points ; +let register_new_points pool peer_id points = + List.iter (register_new_point pool peer_id) points ; Lwt.return_unit let compare_known_point_info p1 p2 = @@ -439,17 +439,17 @@ let compare_known_point_info p1 p2 = | true, false -> 1 | true, true -> compare_last_seen p2 p1 -let list_known_points pool _gid () = +let list_known_points pool _peer_id () = let knowns = Point.Table.fold (fun _ pi acc -> pi :: acc) pool.known_points [] in let best_knowns = Utils.take_n ~compare:compare_known_point_info 50 knowns in Lwt.return (List.map Point_info.point best_knowns) -let active_connections pool = Gid.Table.length pool.connected_gids +let active_connections pool = Peer_id.Table.length pool.connected_peer_ids let create_connection pool conn id_point pi gi _version = - let gid = Gid_info.gid gi in + let peer_id = Peer_info.peer_id gi in let canceler = Canceler.create () in let size = map_option pool.config.incoming_app_message_queue_size @@ -458,32 +458,32 @@ let create_connection pool conn id_point pi gi _version = let callback = { Answerer.message = (fun size msg -> Lwt_pipe.push messages (size, msg)) ; - advertise = register_new_points pool gid ; - bootstrap = list_known_points pool gid ; + advertise = register_new_points pool peer_id ; + bootstrap = list_known_points pool peer_id ; } in let answerer = Answerer.run conn canceler callback in let conn = - { conn ; point_info = pi ; gid_info = gi ; + { conn ; point_info = pi ; peer_info = gi ; messages ; canceler ; answerer ; wait_close = false } in iter_option pi ~f:begin fun pi -> let point = Point_info.point pi in - Point_info.State.set_running pi gid conn ; + Point_info.State.set_running pi peer_id conn ; Point.Table.add pool.connected_points point pi ; end ; - LogEvent.connection_established pool.watcher ~id_point ~gid ; - Gid_info.State.set_running gi id_point conn ; - Gid.Table.add pool.connected_gids gid gi ; + LogEvent.connection_established pool.watcher ~id_point ~peer_id ; + Peer_info.State.set_running gi id_point conn ; + Peer_id.Table.add pool.connected_peer_ids peer_id gi ; Lwt_condition.broadcast pool.events.new_connection () ; Canceler.on_cancel canceler begin fun () -> lwt_debug "Disconnect: %a (%a)" - Gid.pp gid Id_point.pp id_point >>= fun () -> + Peer_id.pp peer_id Id_point.pp id_point >>= fun () -> iter_option ~f:Point_info.State.set_disconnected pi; - LogEvent.disconnection pool.watcher ~is_external:false ~gid ; - Gid_info.State.set_disconnected gi ; + LogEvent.disconnection pool.watcher ~is_external:false ~peer_id ; + Peer_info.State.set_disconnected gi ; iter_option pi ~f:begin fun pi -> Point.Table.remove pool.connected_points (Point_info.point pi) ; end ; - Gid.Table.remove pool.connected_gids gid ; + Peer_id.Table.remove pool.connected_peer_ids peer_id ; if pool.config.max_connections <= active_connections pool then begin Lwt_condition.broadcast pool.events.too_many_connections () ; LogEvent.too_many_connections pool.watcher ; @@ -501,9 +501,9 @@ let disconnect ?(wait = false) conn = Canceler.cancel conn.canceler >>= fun () -> conn.answerer.worker -type error += Rejected of Gid.t +type error += Rejected of Peer_id.t type error += Unexpected_point_state -type error += Unexpected_gid_state +type error += Unexpected_peer_id_state let may_register_my_id_point pool = function | [P2p_connection.Myself (addr, Some port)] -> @@ -551,7 +551,7 @@ let authenticate pool ?pi canceler fd point = match pi, remote_pi with | None, None -> None | Some _ as pi, _ | _, (Some _ as pi) -> pi in - let gi = register_peer pool info.gid in + let gi = register_peer pool info.peer_id in let acceptable_versions = Version.common info.versions pool.message_config.versions in @@ -567,8 +567,8 @@ let authenticate pool ?pi canceler fd point = | Accepted _ | Running _ -> false end in - let acceptable_gid = - match Gid_info.State.get gi with + let acceptable_peer_id = + match Peer_info.State.get gi with | Accepted _ -> (* TODO: in some circumstances cancel and accept... *) false @@ -578,12 +578,12 @@ let authenticate pool ?pi canceler fd point = if incoming then Point.Table.remove pool.incoming point ; match acceptable_versions with - | Some version when acceptable_gid && acceptable_point -> begin + | Some version when acceptable_peer_id && acceptable_point -> begin LogEvent.accepting_request pool.watcher - ~id_point:info.id_point ~point ~gid:info.gid ; + ~id_point:info.id_point ~point ~peer_id:info.peer_id ; iter_option connection_pi - ~f:(fun pi -> Point_info.State.set_accepted pi info.gid canceler) ; - Gid_info.State.set_accepted gi info.id_point canceler ; + ~f:(fun pi -> Point_info.State.set_accepted pi info.peer_id canceler) ; + Peer_info.State.set_accepted gi info.id_point canceler ; lwt_debug "authenticate: %a -> accept %a" Point.pp point Connection_info.pp info >>= fun () -> @@ -599,12 +599,12 @@ let authenticate pool ?pi canceler fd point = end ~on_error: begin fun err -> if incoming then LogEvent.request_rejected pool.watcher - ~credentials:(info.id_point, info.gid) ~point ; + ~credentials:(info.id_point, info.peer_id) ~point ; lwt_debug "authenticate: %a -> rejected %a" Point.pp point Connection_info.pp info >>= fun () -> iter_option connection_pi ~f:Point_info.State.set_disconnected; - Gid_info.State.set_disconnected gi ; + Peer_info.State.set_disconnected gi ; Lwt.return (Error err) end >>=? fun conn -> let id_point = @@ -615,17 +615,17 @@ let authenticate pool ?pi canceler fd point = end | _ -> begin LogEvent.rejecting_request pool.watcher - ~id_point:info.id_point ~point ~gid:info.gid ; - lwt_debug "authenticate: %a -> kick %a point: %B gid: %B" + ~id_point:info.id_point ~point ~peer_id:info.peer_id ; + lwt_debug "authenticate: %a -> kick %a point: %B peer_id: %B" Point.pp point Connection_info.pp info - acceptable_point acceptable_gid >>= fun () -> + acceptable_point acceptable_peer_id >>= fun () -> P2p_connection.kick auth_fd >>= fun () -> if not incoming then begin iter_option ~f:Point_info.State.set_disconnected pi ; - (* FIXME Gid_info.State.set_disconnected ~requested:true gi ; *) + (* FIXME Peer_info.State.set_disconnected ~requested:true gi ; *) end ; - fail (Rejected info.gid) + fail (Rejected info.peer_id) end type error += Pending_connection @@ -640,8 +640,8 @@ let fail_unless_disconnected_point pi = | Requested _ | Accepted _ -> fail Pending_connection | Running _ -> fail Connected -let fail_unless_disconnected_gid gi = - match Gid_info.State.get gi with +let fail_unless_disconnected_peer_id gi = + match Peer_info.State.get gi with | Disconnected -> return () | Accepted _ -> fail Pending_connection | Running _ -> fail Connected @@ -725,76 +725,76 @@ let write_now { conn } msg = P2p_connection.write_now conn (Message msg) let write_all pool msg = - Gid.Table.iter - (fun _gid gi -> - match Gid_info.State.get gi with + Peer_id.Table.iter + (fun _peer_id gi -> + match Peer_info.State.get gi with | Running { data = conn } -> ignore (write_now conn msg : bool tzresult ) | _ -> ()) - pool.connected_gids + pool.connected_peer_ids let broadcast_bootstrap_msg pool = - Gid.Table.iter - (fun _gid gi -> - match Gid_info.State.get gi with + Peer_id.Table.iter + (fun _peer_id gi -> + match Peer_info.State.get gi with | Running { data = { conn } } -> ignore (P2p_connection.write_now conn Bootstrap : bool tzresult ) | _ -> ()) - pool.connected_gids + pool.connected_peer_ids (***************************************************************************) -module Gids = struct +module Peer_ids = struct - type ('msg, 'meta) info = (('msg, 'meta) connection, 'meta) Gid_info.t + type ('msg, 'meta) info = (('msg, 'meta) connection, 'meta) Peer_info.t - let info { known_gids } point = - try Some (Gid.Table.find known_gids point) + let info { known_peer_ids } point = + try Some (Peer_id.Table.find known_peer_ids point) with Not_found -> None - let get_metadata pool gid = - try Some (Gid_info.metadata (Gid.Table.find pool.known_gids gid)) + let get_metadata pool peer_id = + try Some (Peer_info.metadata (Peer_id.Table.find pool.known_peer_ids peer_id)) with Not_found -> None - let get_score pool gid = - try Some (pool.meta_config.score @@ Gid_info.metadata (Gid.Table.find pool.known_gids gid)) + let get_score pool peer_id = + try Some (pool.meta_config.score @@ Peer_info.metadata (Peer_id.Table.find pool.known_peer_ids peer_id)) with Not_found -> None - let set_metadata pool gid data = - Gid_info.set_metadata (register_peer pool gid) data + let set_metadata pool peer_id data = + Peer_info.set_metadata (register_peer pool peer_id) data - let get_trusted pool gid = - try Gid_info.trusted (Gid.Table.find pool.known_gids gid) + let get_trusted pool peer_id = + try Peer_info.trusted (Peer_id.Table.find pool.known_peer_ids peer_id) with Not_found -> false - let set_trusted pool gid = - try Gid_info.set_trusted (register_peer pool gid) + let set_trusted pool peer_id = + try Peer_info.set_trusted (register_peer pool peer_id) with Not_found -> () - let unset_trusted pool gid = - try Gid_info.unset_trusted (Gid.Table.find pool.known_gids gid) + let unset_trusted pool peer_id = + try Peer_info.unset_trusted (Peer_id.Table.find pool.known_peer_ids peer_id) with Not_found -> () - let find_connection pool gid = + let find_connection pool peer_id = apply_option - (info pool gid) + (info pool peer_id) ~f:(fun p -> - match Gid_info.State.get p with + match Peer_info.State.get p with | Running { data } -> Some data | _ -> None) let fold_known pool ~init ~f = - Gid.Table.fold f pool.known_gids init + Peer_id.Table.fold f pool.known_peer_ids init let fold_connected pool ~init ~f = - Gid.Table.fold f pool.connected_gids init + Peer_id.Table.fold f pool.connected_peer_ids init end let fold_connections pool ~init ~f = - Gids.fold_connected pool ~init ~f:begin fun gid gi acc -> - match Gid_info.State.get gi with - | Running { data } -> f gid data acc + Peer_ids.fold_connected pool ~init ~f:begin fun peer_id gi acc -> + match Peer_info.State.get gi with + | Running { data } -> f peer_id data acc | _ -> acc end @@ -806,16 +806,16 @@ module Points = struct try Some (Point.Table.find known_points point) with Not_found -> None - let get_trusted pool gid = - try Point_info.trusted (Point.Table.find pool.known_points gid) + let get_trusted pool peer_id = + try Point_info.trusted (Point.Table.find pool.known_points peer_id) with Not_found -> false - let set_trusted pool gid = - try Point_info.set_trusted (register_point pool gid) + let set_trusted pool peer_id = + try Point_info.set_trusted (register_point pool peer_id) with Not_found -> () - let unset_trusted pool gid = - try Point_info.unset_trusted (Point.Table.find pool.known_points gid) + let unset_trusted pool peer_id = + try Point_info.unset_trusted (Point.Table.find pool.known_points peer_id) with Not_found -> () let find_connection pool point = @@ -857,8 +857,8 @@ let create config meta_config message_config io_sched = let pool = { config ; meta_config ; message_config ; my_id_points = Point.Table.create 7 ; - known_gids = Gid.Table.create 53 ; - connected_gids = Gid.Table.create 53 ; + known_peer_ids = Peer_id.Table.create 53 ; + connected_peer_ids = Peer_id.Table.create 53 ; known_points = Point.Table.create 53 ; connected_points = Point.Table.create 53 ; incoming = Point.Table.create 53 ; @@ -868,11 +868,11 @@ let create config meta_config message_config io_sched = watcher = Watcher.create_input () ; } in List.iter (Points.set_trusted pool) config.trusted_points ; - Gid_info.File.load config.peers_file meta_config.encoding >>= function - | Ok gids -> + Peer_info.File.load config.peers_file meta_config.encoding >>= function + | Ok peer_ids -> List.iter - (fun gi -> Gid.Table.add pool.known_gids (Gid_info.gid gi) gi) - gids ; + (fun gi -> Peer_id.Table.add pool.known_peer_ids (Peer_info.peer_id gi) gi) + peer_ids ; Lwt.return pool | Error err -> log_error "@[Failed to parsed peers file:@ %a@]" @@ -888,14 +888,14 @@ let destroy pool = disconnect conn >>= fun () -> acc | Disconnected -> acc) pool.known_points @@ - Gid.Table.fold (fun _gid gi acc -> - match Gid_info.State.get gi with + Peer_id.Table.fold (fun _peer_id gi acc -> + match Peer_info.State.get gi with | Accepted { cancel } -> Canceler.cancel cancel >>= fun () -> acc | Running { data = conn } -> disconnect conn >>= fun () -> acc | Disconnected -> acc) - pool.known_gids @@ + pool.known_peer_ids @@ Point.Table.fold (fun _point canceler acc -> Canceler.cancel canceler >>= fun () -> acc) pool.incoming Lwt.return_unit diff --git a/src/node/net/p2p_connection_pool.mli b/src/node/net/p2p_connection_pool.mli index 5ef940626..1ea7df4ce 100644 --- a/src/node/net/p2p_connection_pool.mli +++ b/src/node/net/p2p_connection_pool.mli @@ -54,7 +54,7 @@ type config = { peers_file : string ; (** The path to the JSON file where the metadata associated to - gids are loaded / stored. *) + peer_ids are loaded / stored. *) closed_network : bool ; (** If [true], the only accepted connections are from peers whose @@ -93,8 +93,8 @@ type config = { (** Size of the outgoing message queue internal to a peer's Writer (See [P2p_connection.accept]). *) - known_gids_history_size : int ; - (** Size of the known gids log buffer (default: 50) *) + known_peer_ids_history_size : int ; + (** Size of the known peer_ids log buffer (default: 50) *) known_points_history_size : int ; (** Size of the known points log buffer (default: 50) *) @@ -106,8 +106,8 @@ type config = { disconnected points, older first, to try to reach the amount of connections indicated by the second integer. *) - max_known_gids : (int * int) option ; - (** Like [max_known_points], but for known gids. *) + max_known_peer_ids : (int * int) option ; + (** Like [max_known_points], but for known peer_ids. *) } type 'meta meta_config = { @@ -174,7 +174,7 @@ module LogEvent : sig | Too_many_connections | New_point of Point.t - | New_peer of Gid.t + | New_peer of Peer_id.t (** Connection-level events *) @@ -185,25 +185,25 @@ module LogEvent : sig | Authentication_failed of Point.t (** Remote point failed authentication *) - | Accepting_request of Point.t * Id_point.t * Gid.t + | Accepting_request of Point.t * Id_point.t * Peer_id.t (** We accepted a connection after authentifying the remote peer. *) - | Rejecting_request of Point.t * Id_point.t * Gid.t + | Rejecting_request of Point.t * Id_point.t * Peer_id.t (** We rejected a connection after authentifying the remote peer. *) - | Request_rejected of Point.t * (Id_point.t * Gid.t) option + | Request_rejected of Point.t * (Id_point.t * Peer_id.t) option (** The remote peer rejected our connection. *) - | Connection_established of Id_point.t * Gid.t + | Connection_established of Id_point.t * Peer_id.t (** We succesfully established a authentified connection. *) - | Disconnection of Gid.t + | Disconnection of Peer_id.t (** We decided to close the connection. *) - | External_disconnection of Gid.t + | External_disconnection of Peer_id.t (** The connection was closed for external reason. *) | Gc_points (** Garbage correction of known point table has been triggered. *) - | Gc_gids - (** Garbage correction of known gids table has been triggered. *) + | Gc_peer_ids + (** Garbage correction of known peer_ids table has been triggered. *) val encoding : t Data_encoding.t end @@ -224,7 +224,7 @@ type ('msg, 'meta) connection type error += Pending_connection type error += Connected type error += Connection_refused -type error += Rejected of Gid.t +type error += Rejected of Peer_id.t type error += Too_many_connections type error += Closed_network @@ -254,7 +254,7 @@ val connection_stat: ('msg, 'meta) connection -> Stat.t val fold_connections: ('msg, 'meta) pool -> init:'a -> - f:(Gid.t -> ('msg, 'meta) connection -> 'a -> 'a) -> + f:(Peer_id.t -> ('msg, 'meta) connection -> 'a -> 'a) -> 'a (** {1 I/O on connections} *) @@ -291,36 +291,36 @@ val broadcast_bootstrap_msg: ('msg, 'meta) pool -> unit (** [write_all pool msg] is [P2P_connection.write_now conn Bootstrap] for all member connections to [pool] in [Running] state. *) -(** {1 Functions on [Gid]} *) +(** {1 Functions on [Peer_id]} *) -module Gids : sig +module Peer_ids : sig - type ('msg, 'meta) info = (('msg, 'meta) connection, 'meta) Gid_info.t + type ('msg, 'meta) info = (('msg, 'meta) connection, 'meta) Peer_info.t val info: - ('msg, 'meta) pool -> Gid.t -> ('msg, 'meta) info option + ('msg, 'meta) pool -> Peer_id.t -> ('msg, 'meta) info option - val get_metadata: ('msg, 'meta) pool -> Gid.t -> 'meta option - val set_metadata: ('msg, 'meta) pool -> Gid.t -> 'meta -> unit - val get_score: ('msg, 'meta) pool -> Gid.t -> float option + val get_metadata: ('msg, 'meta) pool -> Peer_id.t -> 'meta option + val set_metadata: ('msg, 'meta) pool -> Peer_id.t -> 'meta -> unit + val get_score: ('msg, 'meta) pool -> Peer_id.t -> float option - val get_trusted: ('msg, 'meta) pool -> Gid.t -> bool - val set_trusted: ('msg, 'meta) pool -> Gid.t -> unit - val unset_trusted: ('msg, 'meta) pool -> Gid.t -> unit + val get_trusted: ('msg, 'meta) pool -> Peer_id.t -> bool + val set_trusted: ('msg, 'meta) pool -> Peer_id.t -> unit + val unset_trusted: ('msg, 'meta) pool -> Peer_id.t -> unit val find_connection: - ('msg, 'meta) pool -> Gid.t -> ('msg, 'meta) connection option + ('msg, 'meta) pool -> Peer_id.t -> ('msg, 'meta) connection option val fold_known: ('msg, 'meta) pool -> init:'a -> - f:(Gid.t -> ('msg, 'meta) info -> 'a -> 'a) -> + f:(Peer_id.t -> ('msg, 'meta) info -> 'a -> 'a) -> 'a val fold_connected: ('msg, 'meta) pool -> init:'a -> - f:(Gid.t -> ('msg, 'meta) info -> 'a -> 'a) -> + f:(Peer_id.t -> ('msg, 'meta) info -> 'a -> 'a) -> 'a end diff --git a/src/node/net/p2p_connection_pool_types.ml b/src/node/net/p2p_connection_pool_types.ml index 8191dccee..357ad1a09 100644 --- a/src/node/net/p2p_connection_pool_types.ml +++ b/src/node/net/p2p_connection_pool_types.ml @@ -13,22 +13,22 @@ module Point_info = struct type 'data state = | Requested of { cancel: Canceler.t } - | Accepted of { current_gid: Gid.t ; + | Accepted of { current_peer_id: Peer_id.t ; cancel: Canceler.t } | Running of { data: 'data ; - current_gid: Gid.t } + current_peer_id: Peer_id.t } | Disconnected module Event = struct type kind = | Outgoing_request - | Accepting_request of Gid.t - | Rejecting_request of Gid.t - | Request_rejected of Gid.t option - | Connection_established of Gid.t - | Disconnection of Gid.t - | External_disconnection of Gid.t + | Accepting_request of Peer_id.t + | Rejecting_request of Peer_id.t + | Request_rejected of Peer_id.t option + | Connection_established of Peer_id.t + | Disconnection of Peer_id.t + | External_disconnection of Peer_id.t let kind_encoding = let open Data_encoding in @@ -41,29 +41,29 @@ module Point_info = struct (function Outgoing_request -> Some () | _ -> None) (fun () -> Outgoing_request) ; case ~tag:1 (branch_encoding "accepting_request" - (obj1 (req "gid" Gid.encoding))) - (function Accepting_request gid -> Some gid | _ -> None) - (fun gid -> Accepting_request gid) ; + (obj1 (req "peer_id" Peer_id.encoding))) + (function Accepting_request peer_id -> Some peer_id | _ -> None) + (fun peer_id -> Accepting_request peer_id) ; case ~tag:2 (branch_encoding "rejecting_request" - (obj1 (req "gid" Gid.encoding))) - (function Rejecting_request gid -> Some gid | _ -> None) - (fun gid -> Rejecting_request gid) ; + (obj1 (req "peer_id" Peer_id.encoding))) + (function Rejecting_request peer_id -> Some peer_id | _ -> None) + (fun peer_id -> Rejecting_request peer_id) ; case ~tag:3 (branch_encoding "request_rejected" - (obj1 (opt "gid" Gid.encoding))) - (function Request_rejected gid -> Some gid | _ -> None) - (fun gid -> Request_rejected gid) ; + (obj1 (opt "peer_id" Peer_id.encoding))) + (function Request_rejected peer_id -> Some peer_id | _ -> None) + (fun peer_id -> Request_rejected peer_id) ; case ~tag:4 (branch_encoding "rejecting_request" - (obj1 (req "gid" Gid.encoding))) - (function Connection_established gid -> Some gid | _ -> None) - (fun gid -> Connection_established gid) ; + (obj1 (req "peer_id" Peer_id.encoding))) + (function Connection_established peer_id -> Some peer_id | _ -> None) + (fun peer_id -> Connection_established peer_id) ; case ~tag:5 (branch_encoding "rejecting_request" - (obj1 (req "gid" Gid.encoding))) - (function Disconnection gid -> Some gid | _ -> None) - (fun gid -> Disconnection gid) ; + (obj1 (req "peer_id" Peer_id.encoding))) + (function Disconnection peer_id -> Some peer_id | _ -> None) + (fun peer_id -> Disconnection peer_id) ; case ~tag:6 (branch_encoding "rejecting_request" - (obj1 (req "gid" Gid.encoding))) - (function External_disconnection gid -> Some gid | _ -> None) - (fun gid -> External_disconnection gid) ; + (obj1 (req "peer_id" Peer_id.encoding))) + (function External_disconnection peer_id -> Some peer_id | _ -> None) + (fun peer_id -> External_disconnection peer_id) ; ] type t = { @@ -92,9 +92,9 @@ module Point_info = struct mutable trusted : bool ; mutable state : 'data state ; mutable last_failed_connection : Time.t option ; - mutable last_rejected_connection : (Gid.t * Time.t) option ; - mutable last_established_connection : (Gid.t * Time.t) option ; - mutable last_disconnection : (Gid.t * Time.t) option ; + mutable last_rejected_connection : (Peer_id.t * Time.t) option ; + mutable last_established_connection : (Peer_id.t * Time.t) option ; + mutable last_disconnection : (Peer_id.t * Time.t) option ; greylisting : greylisting_config ; mutable greylisting_delay : float ; mutable greylisting_end : Time.t ; @@ -172,27 +172,27 @@ module Point_info = struct Ring.add events event ; Watcher.notify watchers event - let log_incoming_rejection ?timestamp point_info gid = - log point_info ?timestamp (Rejecting_request gid) + let log_incoming_rejection ?timestamp point_info peer_id = + log point_info ?timestamp (Rejecting_request peer_id) module State = struct type 'data t = 'data state = | Requested of { cancel: Canceler.t } - | Accepted of { current_gid: Gid.t ; + | Accepted of { current_peer_id: Peer_id.t ; cancel: Canceler.t } | Running of { data: 'data ; - current_gid: Gid.t } + current_peer_id: Peer_id.t } | Disconnected type 'data state = 'data t let pp ppf = function | Requested _ -> Format.fprintf ppf "requested" - | Accepted { current_gid } -> - Format.fprintf ppf "accepted %a" Gid.pp current_gid - | Running { current_gid } -> - Format.fprintf ppf "running %a" Gid.pp current_gid + | Accepted { current_peer_id } -> + Format.fprintf ppf "accepted %a" Peer_id.pp current_peer_id + | Running { current_peer_id } -> + Format.fprintf ppf "running %a" Peer_id.pp current_peer_id | Disconnected -> Format.fprintf ppf "disconnected" @@ -215,29 +215,29 @@ module Point_info = struct let set_accepted ?(timestamp = Time.now ()) - point_info current_gid cancel = + point_info current_peer_id cancel = (* log_notice "SET_ACCEPTED %a@." Point.pp point_info.point ; *) assert begin match point_info.state with | Accepted _ | Running _ -> false | Requested _ | Disconnected -> true end ; - point_info.state <- Accepted { current_gid ; cancel } ; - log point_info ~timestamp (Accepting_request current_gid) + point_info.state <- Accepted { current_peer_id ; cancel } ; + log point_info ~timestamp (Accepting_request current_peer_id) let set_running ?(timestamp = Time.now ()) - point_info gid data = + point_info peer_id data = assert begin match point_info.state with - | Disconnected -> true (* request to unknown gid. *) + | Disconnected -> true (* request to unknown peer_id. *) | Running _ -> false - | Accepted { current_gid } -> Gid.equal gid current_gid + | Accepted { current_peer_id } -> Peer_id.equal peer_id current_peer_id | Requested _ -> true end ; - point_info.state <- Running { data ; current_gid = gid } ; - point_info.last_established_connection <- Some (gid, timestamp) ; - log point_info ~timestamp (Connection_established gid) + point_info.state <- Running { data ; current_peer_id = peer_id } ; + point_info.last_established_connection <- Some (peer_id, timestamp) ; + log point_info ~timestamp (Connection_established peer_id) let set_greylisted timestamp point_info = point_info.greylisting_end <- @@ -255,21 +255,21 @@ module Point_info = struct set_greylisted timestamp point_info ; point_info.last_failed_connection <- Some timestamp ; Request_rejected None - | Accepted { current_gid } -> + | Accepted { current_peer_id } -> set_greylisted timestamp point_info ; point_info.last_rejected_connection <- - Some (current_gid, timestamp) ; - Request_rejected (Some current_gid) - | Running { current_gid } -> + Some (current_peer_id, timestamp) ; + Request_rejected (Some current_peer_id) + | Running { current_peer_id } -> point_info.greylisting_delay <- float_of_int point_info.greylisting.initial_delay ; point_info.greylisting_end <- Time.add timestamp (Int64.of_int point_info.greylisting.disconnection_delay) ; - point_info.last_disconnection <- Some (current_gid, timestamp) ; + point_info.last_disconnection <- Some (current_peer_id, timestamp) ; if requested - then Disconnection current_gid - else External_disconnection current_gid + then Disconnection current_peer_id + else External_disconnection current_peer_id | Disconnected -> assert false in @@ -280,7 +280,7 @@ module Point_info = struct end -module Gid_info = struct +module Peer_info = struct type 'data state = | Accepted of { current_point: Id_point.t ; @@ -333,7 +333,7 @@ module Gid_info = struct end type ('conn, 'meta) t = { - gid : Gid.t ; + peer_id : Peer_id.t ; created : Time.t ; mutable state : 'conn state ; mutable metadata : 'meta ; @@ -345,14 +345,14 @@ module Gid_info = struct events : Event.t Ring.t ; watchers : Event.t Watcher.input ; } - type ('conn, 'meta) gid_info = ('conn, 'meta) t + type ('conn, 'meta) peer_info = ('conn, 'meta) t - let compare gi1 gi2 = Gid.compare gi1.gid gi2.gid + let compare gi1 gi2 = Peer_id.compare gi1.peer_id gi2.peer_id let log_size = 100 - let create ?(created = Time.now ()) ?(trusted = false) ~metadata gid = - { gid ; + let create ?(created = Time.now ()) ?(trusted = false) ~metadata peer_id = + { peer_id ; created ; state = Disconnected ; metadata ; @@ -368,20 +368,20 @@ module Gid_info = struct let encoding metadata_encoding = let open Data_encoding in conv - (fun { gid ; trusted ; metadata ; events ; created ; + (fun { peer_id ; trusted ; metadata ; events ; created ; last_failed_connection ; last_rejected_connection ; last_established_connection ; last_disconnection } -> - (gid, created, trusted, metadata, Ring.elements events, + (peer_id, created, trusted, metadata, Ring.elements events, last_failed_connection, last_rejected_connection, last_established_connection, last_disconnection)) - (fun (gid, created, trusted, metadata, event_list, + (fun (peer_id, created, trusted, metadata, event_list, last_failed_connection, last_rejected_connection, last_established_connection, last_disconnection) -> - let info = create ~trusted ~metadata gid in + let info = create ~trusted ~metadata peer_id in let events = Ring.create log_size in Ring.add_list info.events event_list ; { state = Disconnected ; - trusted ; gid ; metadata ; created ; + trusted ; peer_id ; metadata ; created ; last_failed_connection ; last_rejected_connection ; last_established_connection ; @@ -390,7 +390,7 @@ module Gid_info = struct watchers = Watcher.create_input () ; }) (obj9 - (req "gid" Gid.encoding) + (req "peer_id" Peer_id.encoding) (req "created" Time.encoding) (dft "trusted" bool false) (req "metadata" metadata_encoding) @@ -404,7 +404,7 @@ module Gid_info = struct (opt "last_disconnection" (tup2 Id_point.encoding Time.encoding))) - let gid { gid } = gid + let peer_id { peer_id } = peer_id let created { created } = created let metadata { metadata } = metadata let set_metadata gi metadata = gi.metadata <- metadata @@ -435,8 +435,8 @@ module Gid_info = struct let watch { watchers } = Watcher.create_stream watchers - let log_incoming_rejection ?timestamp gid_info point = - log gid_info ?timestamp point Rejecting_request + let log_incoming_rejection ?timestamp peer_info point = + log peer_info ?timestamp point Rejecting_request module State = struct @@ -465,46 +465,46 @@ module Gid_info = struct let set_accepted ?(timestamp = Time.now ()) - gid_info current_point cancel = + peer_info current_point cancel = assert begin - match gid_info.state with + match peer_info.state with | Accepted _ | Running _ -> false | Disconnected -> true end ; - gid_info.state <- Accepted { current_point ; cancel } ; - log gid_info ~timestamp current_point Accepting_request + peer_info.state <- Accepted { current_point ; cancel } ; + log peer_info ~timestamp current_point Accepting_request let set_running ?(timestamp = Time.now ()) - gid_info point data = + peer_info point data = assert begin - match gid_info.state with - | Disconnected -> true (* request to unknown gid. *) + match peer_info.state with + | Disconnected -> true (* request to unknown peer_id. *) | Running _ -> false | Accepted { current_point } -> Id_point.equal point current_point end ; - gid_info.state <- Running { data ; current_point = point } ; - gid_info.last_established_connection <- Some (point, timestamp) ; - log gid_info ~timestamp point Connection_established + peer_info.state <- Running { data ; current_point = point } ; + peer_info.last_established_connection <- Some (point, timestamp) ; + log peer_info ~timestamp point Connection_established let set_disconnected - ?(timestamp = Time.now ()) ?(requested = false) gid_info = + ?(timestamp = Time.now ()) ?(requested = false) peer_info = let current_point, (event : Event.kind) = - match gid_info.state with + match peer_info.state with | Accepted { current_point } -> - gid_info.last_rejected_connection <- + peer_info.last_rejected_connection <- Some (current_point, timestamp) ; current_point, Request_rejected | Running { current_point } -> - gid_info.last_disconnection <- + peer_info.last_disconnection <- Some (current_point, timestamp) ; current_point, if requested then Disconnection else External_disconnection | Disconnected -> assert false in - gid_info.state <- Disconnected ; - log gid_info ~timestamp current_point event + peer_info.state <- Disconnected ; + log peer_info ~timestamp current_point event end diff --git a/src/node/net/p2p_connection_pool_types.mli b/src/node/net/p2p_connection_pool_types.mli index bbfab729a..a8ac5376b 100644 --- a/src/node/net/p2p_connection_pool_types.mli +++ b/src/node/net/p2p_connection_pool_types.mli @@ -41,14 +41,14 @@ module Point_info : sig val last_failed_connection : 'conn point_info -> Time.t option val last_rejected_connection : - 'conn point_info -> (Gid.t * Time.t) option + 'conn point_info -> (Peer_id.t * Time.t) option val last_established_connection : - 'conn point_info -> (Gid.t * Time.t) option + 'conn point_info -> (Peer_id.t * Time.t) option val last_disconnection : - 'conn point_info -> (Gid.t * Time.t) option + 'conn point_info -> (Peer_id.t * Time.t) option val last_seen : - 'conn point_info -> (Gid.t * Time.t) option + 'conn point_info -> (Peer_id.t * Time.t) option (** [last_seen pi] is the most recent of: * last established connection @@ -77,11 +77,11 @@ module Point_info : sig type 'conn t = | Requested of { cancel: Canceler.t } (** We initiated a connection. *) - | Accepted of { current_gid: Gid.t ; + | Accepted of { current_peer_id: Peer_id.t ; cancel: Canceler.t } (** We accepted a incoming connection. *) | Running of { data: 'conn ; - current_gid: Gid.t } + current_peer_id: Peer_id.t } (** Successfully authentificated connection, normal business. *) | Disconnected (** No connection established currently. *) @@ -99,10 +99,10 @@ module Point_info : sig val set_accepted : ?timestamp:Time.t -> - 'conn point_info -> Gid.t -> Canceler.t -> unit + 'conn point_info -> Peer_id.t -> Canceler.t -> unit val set_running : - ?timestamp:Time.t -> 'conn point_info -> Gid.t -> 'conn -> unit + ?timestamp:Time.t -> 'conn point_info -> Peer_id.t -> 'conn -> unit val set_disconnected : ?timestamp:Time.t -> ?requested:bool -> 'conn point_info -> unit @@ -114,17 +114,17 @@ module Point_info : sig type kind = | Outgoing_request (** We initiated a connection. *) - | Accepting_request of Gid.t + | Accepting_request of Peer_id.t (** We accepted a connection after authentifying the remote peer. *) - | Rejecting_request of Gid.t + | Rejecting_request of Peer_id.t (** We rejected a connection after authentifying the remote peer. *) - | Request_rejected of Gid.t option + | Request_rejected of Peer_id.t option (** The remote peer rejected our connection. *) - | Connection_established of Gid.t + | Connection_established of Peer_id.t (** We succesfully established a authentified connection. *) - | Disconnection of Gid.t + | Disconnection of Peer_id.t (** We decided to close the connection. *) - | External_disconnection of Gid.t + | External_disconnection of Peer_id.t (** The connection was closed for external reason. *) type t = { @@ -142,17 +142,17 @@ module Point_info : sig 'conn point_info -> Event.t Lwt_stream.t * Watcher.stopper val log_incoming_rejection : - ?timestamp:Time.t -> 'conn point_info -> Gid.t -> unit + ?timestamp:Time.t -> 'conn point_info -> Peer_id.t -> unit end -(** Gid info: current and historical information about a gid *) +(** Peer_id info: current and historical information about a peer_id *) -module Gid_info : sig +module Peer_info : sig type ('conn, 'meta) t - type ('conn, 'meta) gid_info = ('conn, 'meta) t + type ('conn, 'meta) peer_info = ('conn, 'meta) t val compare : ('conn, 'meta) t -> ('conn, 'meta) t -> int @@ -160,31 +160,31 @@ module Gid_info : sig ?created:Time.t -> ?trusted:bool -> metadata:'meta -> - Gid.t -> ('conn, 'meta) gid_info - (** [create ~trusted ~meta gid] is a freshly minted gid info for - [gid]. *) + Peer_id.t -> ('conn, 'meta) peer_info + (** [create ~trusted ~meta peer_id] is a freshly minted peer_id info for + [peer_id]. *) - val gid : ('conn, 'meta) gid_info -> Gid.t + val peer_id : ('conn, 'meta) peer_info -> Peer_id.t - val created : ('conn, 'meta) gid_info -> Time.t - val metadata : ('conn, 'meta) gid_info -> 'meta - val set_metadata : ('conn, 'meta) gid_info -> 'meta -> unit + val created : ('conn, 'meta) peer_info -> Time.t + val metadata : ('conn, 'meta) peer_info -> 'meta + val set_metadata : ('conn, 'meta) peer_info -> 'meta -> unit - val trusted : ('conn, 'meta) gid_info -> bool - val set_trusted : ('conn, 'meta) gid_info -> unit - val unset_trusted : ('conn, 'meta) gid_info -> unit + val trusted : ('conn, 'meta) peer_info -> bool + val set_trusted : ('conn, 'meta) peer_info -> unit + val unset_trusted : ('conn, 'meta) peer_info -> unit val last_failed_connection : - ('conn, 'meta) gid_info -> (Id_point.t * Time.t) option + ('conn, 'meta) peer_info -> (Id_point.t * Time.t) option val last_rejected_connection : - ('conn, 'meta) gid_info -> (Id_point.t * Time.t) option + ('conn, 'meta) peer_info -> (Id_point.t * Time.t) option val last_established_connection : - ('conn, 'meta) gid_info -> (Id_point.t * Time.t) option + ('conn, 'meta) peer_info -> (Id_point.t * Time.t) option val last_disconnection : - ('conn, 'meta) gid_info -> (Id_point.t * Time.t) option + ('conn, 'meta) peer_info -> (Id_point.t * Time.t) option val last_seen : - ('conn, 'meta) gid_info -> (Id_point.t * Time.t) option + ('conn, 'meta) peer_info -> (Id_point.t * Time.t) option (** [last_seen gi] is the most recent of: * last established connection @@ -193,7 +193,7 @@ module Gid_info : sig *) val last_miss : - ('conn, 'meta) gid_info -> (Id_point.t * Time.t) option + ('conn, 'meta) peer_info -> (Id_point.t * Time.t) option (** [last_miss gi] is the most recent of: * last failed connection @@ -217,22 +217,22 @@ module Gid_info : sig val pp : Format.formatter -> 'conn t -> unit - val get : ('conn, 'meta) gid_info -> 'conn state + val get : ('conn, 'meta) peer_info -> 'conn state - val is_disconnected : ('conn, 'meta) gid_info -> bool + val is_disconnected : ('conn, 'meta) peer_info -> bool val set_accepted : ?timestamp:Time.t -> - ('conn, 'meta) gid_info -> Id_point.t -> Canceler.t -> unit + ('conn, 'meta) peer_info -> Id_point.t -> Canceler.t -> unit val set_running : ?timestamp:Time.t -> - ('conn, 'meta) gid_info -> Id_point.t -> 'conn -> unit + ('conn, 'meta) peer_info -> Id_point.t -> 'conn -> unit val set_disconnected : ?timestamp:Time.t -> ?requested:bool -> - ('conn, 'meta) gid_info -> unit + ('conn, 'meta) peer_info -> unit end @@ -262,22 +262,22 @@ module Gid_info : sig end val fold_events : - ('conn, 'meta) gid_info -> init:'a -> f:('a -> Event.t -> 'a) -> 'a + ('conn, 'meta) peer_info -> init:'a -> f:('a -> Event.t -> 'a) -> 'a val watch : - ('conn, 'meta) gid_info -> Event.t Lwt_stream.t * Watcher.stopper + ('conn, 'meta) peer_info -> Event.t Lwt_stream.t * Watcher.stopper val log_incoming_rejection : ?timestamp:Time.t -> - ('conn, 'meta) gid_info -> Id_point.t -> unit + ('conn, 'meta) peer_info -> Id_point.t -> unit module File : sig val load : string -> 'meta Data_encoding.t -> - ('conn, 'meta) gid_info list tzresult Lwt.t + ('conn, 'meta) peer_info list tzresult Lwt.t val save : string -> 'meta Data_encoding.t -> - ('conn, 'meta) gid_info list -> unit tzresult Lwt.t + ('conn, 'meta) peer_info list -> unit tzresult Lwt.t end end diff --git a/src/node/net/p2p_discovery.ml b/src/node/net/p2p_discovery.ml index 2f61b286c..88a81dbf9 100644 --- a/src/node/net/p2p_discovery.ml +++ b/src/node/net/p2p_discovery.ml @@ -20,19 +20,19 @@ let inet_addr = Unix.inet_addr_of_string "ff0e::54:455a:3053" module Message = struct let encoding = - Data_encoding.(tup3 (Fixed.string 10) Gid.encoding int16) + Data_encoding.(tup3 (Fixed.string 10) Peer_id.encoding int16) let length = Data_encoding.Binary.fixed_length_exn encoding - let make gid port = - Data_encoding.Binary.to_bytes encoding ("DISCOMAGIC", gid, port) + let make peer_id port = + Data_encoding.Binary.to_bytes encoding ("DISCOMAGIC", peer_id, port) end (* Sends discover messages into space in an exponentially delayed loop, restartable using a condition *) -let sender sock saddr my_gid inco_port cancelation restart = - let buf = Message.make my_gid inco_port in +let sender sock saddr my_peer_id inco_port cancelation restart = + let buf = Message.make my_peer_id inco_port in let rec loop delay n = Lwt.catch (fun () -> @@ -40,7 +40,7 @@ let sender sock saddr my_gid inco_port cancelation restart = Lwt.return_unit) (fun exn -> lwt_debug "(%a) error broadcasting a discovery request: %a" - Gid.pp my_gid Error_monad.pp (Exn exn)) >>= fun () -> + Peer_id.pp my_peer_id Error_monad.pp (Exn exn)) >>= fun () -> Lwt.pick [ (Lwt_unix.sleep delay >>= fun () -> Lwt.return (Some (delay, n + 1))) ; (cancelation () >>= fun () -> Lwt.return_none) ; @@ -66,7 +66,7 @@ module Answerer = struct (* Launch an answer machine for the discovery mechanism, takes a callback to fill the answers and returns a canceler function *) - let answerer sock my_gid cancelation callback = + let answerer sock my_peer_id cancelation callback = (* the answering function *) let buf = MBytes.create Message.length in let rec step () = @@ -78,8 +78,8 @@ module Answerer = struct | Some (len', Lwt_unix.ADDR_INET (remote_addr, _mcast_port)) when len' = Message.length -> begin match (Data_encoding.Binary.of_bytes Message.encoding buf) with - | Some ("DISCOMAGIC", remote_gid, remote_inco_port) - when remote_gid <> my_gid -> + | Some ("DISCOMAGIC", remote_peer_id, remote_inco_port) + when remote_peer_id <> my_peer_id -> Lwt.catch (fun () -> callback ~remote_addr ~remote_inco_port) (fun exn -> @@ -101,8 +101,8 @@ module Answerer = struct Lwt.catch (fun () -> Lwt_utils.worker - (Format.asprintf "(%a) discovery answerer" Gid.pp my_gid) - (fun () -> answerer fd my_gid cancelation callback) + (Format.asprintf "(%a) discovery answerer" Peer_id.pp my_peer_id) + (fun () -> answerer fd my_peer_id cancelation callback) cancel) (fun exn -> lwt_log_error "Discovery answerer not started: %a" @@ -117,9 +117,9 @@ let discovery_sender = (fun () -> let sender () = Discovery.sender fd - saddr my_gid inco_port cancelation restart_discovery in + saddr my_peer_id inco_port cancelation restart_discovery in Lwt_utils.worker - (Format.asprintf "(%a) discovery sender" Gid.pp my_gid) + (Format.asprintf "(%a) discovery sender" Peer_id.pp my_peer_id) sender cancel) (fun exn -> lwt_log_error "Discovery sender not started: %a" diff --git a/src/node/net/p2p_io_scheduler.ml b/src/node/net/p2p_io_scheduler.ml index 25ace0756..c816204a7 100644 --- a/src/node/net/p2p_io_scheduler.ml +++ b/src/node/net/p2p_io_scheduler.ml @@ -489,7 +489,7 @@ let shutdown ?timeout st = st.closed <- true ; ReadScheduler.shutdown st.read_scheduler >>= fun () -> Inttbl.fold - (fun _gid conn acc -> close ?timeout conn >>= fun _ -> acc) + (fun _peer_id conn acc -> close ?timeout conn >>= fun _ -> acc) st.connected Lwt.return_unit >>= fun () -> WriteScheduler.shutdown st.write_scheduler >>= fun () -> diff --git a/src/node/net/p2p_types.ml b/src/node/net/p2p_types.ml index 0f69270ea..90a6a7476 100644 --- a/src/node/net/p2p_types.ml +++ b/src/node/net/p2p_types.ml @@ -101,7 +101,7 @@ module Stat = struct (req "current_outflow" int31)) end -module Gid = struct +module Peer_id = struct include Crypto_box.Public_key_hash let pp = pp_short module Map = Map.Make (Crypto_box.Public_key_hash) @@ -162,10 +162,6 @@ module Point = struct include T - (* Run-time point-or-gid indexed storage, one point is bound to at - most one gid, which is the invariant we want to keep both for the - connected peers table and the known peers one *) - module Map = Map.Make (T) module Set = Set.Make (T) module Table = Hashtbl.Make (T) @@ -220,10 +216,6 @@ module Id_point = struct include T - (* Run-time point-or-gid indexed storage, one point is bound to at - most one gid, which is the invariant we want to keep both for the - connected peers table and the known peers one *) - module Map = Map.Make (T) module Set = Set.Make (T) module Table = Hashtbl.Make (T) @@ -233,7 +225,7 @@ end module Identity = struct type t = { - gid : Gid.t ; + peer_id : Peer_id.t ; public_key : Crypto_box.public_key ; secret_key : Crypto_box.secret_key ; proof_of_work_stamp : Crypto_box.nonce ; @@ -245,18 +237,18 @@ module Identity = struct (fun { public_key ; secret_key ; proof_of_work_stamp } -> (public_key, secret_key, proof_of_work_stamp)) (fun (public_key, secret_key, proof_of_work_stamp) -> - let gid = Crypto_box.hash public_key in - { gid ; public_key ; secret_key ; proof_of_work_stamp }) + let peer_id = Crypto_box.hash public_key in + { peer_id ; public_key ; secret_key ; proof_of_work_stamp }) (obj3 (req "public_key" Crypto_box.public_key_encoding) (req "secret_key" Crypto_box.secret_key_encoding) (req "proof_of_work_stamp" Crypto_box.nonce_encoding)) let generate ?max target = - let secret_key, public_key, gid = Crypto_box.random_keypair () in + let secret_key, public_key, peer_id = Crypto_box.random_keypair () in let proof_of_work_stamp = Crypto_box.generate_proof_of_work ?max public_key target in - { gid ; public_key ; secret_key ; proof_of_work_stamp } + { peer_id ; public_key ; secret_key ; proof_of_work_stamp } let animation = [| "|.....|" ; @@ -307,7 +299,7 @@ module Connection_info = struct type t = { incoming : bool; - gid : Gid.t; + peer_id : Peer_id.t; id_point : Id_point.t; remote_socket_port : port; versions : Version.t list ; @@ -316,26 +308,26 @@ module Connection_info = struct let encoding = let open Data_encoding in conv - (fun { incoming ; gid ; id_point ; remote_socket_port ; versions } -> - (incoming, gid, id_point, remote_socket_port, versions)) - (fun (incoming, gid, id_point, remote_socket_port, versions) -> - { incoming ; gid ; id_point ; remote_socket_port ; versions }) + (fun { incoming ; peer_id ; id_point ; remote_socket_port ; versions } -> + (incoming, peer_id, id_point, remote_socket_port, versions)) + (fun (incoming, peer_id, id_point, remote_socket_port, versions) -> + { incoming ; peer_id ; id_point ; remote_socket_port ; versions }) (obj5 (req "incoming" bool) - (req "gid" Gid.encoding) + (req "peer_id" Peer_id.encoding) (req "id_point" Id_point.encoding) (req "remote_socket_port" uint16) (req "versions" (list Version.encoding))) let pp ppf - { incoming ; id_point = (remote_addr, remote_port) ; gid } = + { incoming ; id_point = (remote_addr, remote_port) ; peer_id } = Format.fprintf ppf "%a:%a {%a}%s" Ipaddr.V6.pp_hum remote_addr (fun ppf port -> match port with | None -> Format.pp_print_string ppf "??" | Some port -> Format.pp_print_int ppf port) remote_port - Gid.pp gid + Peer_id.pp peer_id (if incoming then " (incoming)" else "") end diff --git a/src/node/net/p2p_types.mli b/src/node/net/p2p_types.mli index be70ea962..33c25d7c8 100644 --- a/src/node/net/p2p_types.mli +++ b/src/node/net/p2p_types.mli @@ -24,11 +24,11 @@ module Version : sig end -(** Gid, i.e. persistent peer identifier *) +(** Peer_id, i.e. persistent peer identifier *) -module Gid : sig +module Peer_id : sig type t = Crypto_box.Public_key_hash.t - (** Type of a gid, a public key hash. *) + (** Type of a peer_id, a public key hash. *) val compare : t -> t -> int val equal : t -> t -> bool @@ -86,12 +86,12 @@ end module Identity : sig type t = { - gid : Gid.t ; + peer_id : Peer_id.t ; public_key : Crypto_box.public_key ; secret_key : Crypto_box.secret_key ; proof_of_work_stamp : Crypto_box.nonce ; } - (** Type of an identity, comprising a gid, a crypto keypair, and a + (** Type of an identity, comprising a peer_id, a crypto keypair, and a proof of work stamp with enough difficulty so that the network accept this identity as genuine. *) @@ -131,7 +131,7 @@ module Connection_info : sig type t = { incoming : bool; - gid : Gid.t; + peer_id : Peer_id.t; id_point : Id_point.t; remote_socket_port : port; versions : Version.t list ; diff --git a/src/node/shell/node.ml b/src/node/shell/node.ml index 6dc1b21a4..60034879b 100644 --- a/src/node/shell/node.ml +++ b/src/node/shell/node.ml @@ -632,18 +632,18 @@ module RPC = struct Tezos_p2p.RPC.Point.watch node.p2p end - module Gid = struct + module Peer_id = struct let info (node : t) = - Tezos_p2p.RPC.Gid.info node.p2p + Tezos_p2p.RPC.Peer_id.info node.p2p let infos (node : t) restrict = - Tezos_p2p.RPC.Gid.infos ~restrict node.p2p + Tezos_p2p.RPC.Peer_id.infos ~restrict node.p2p let events (node : t) = - Tezos_p2p.RPC.Gid.events node.p2p + Tezos_p2p.RPC.Peer_id.events node.p2p let watch (node : t) = - Tezos_p2p.RPC.Gid.watch node.p2p + Tezos_p2p.RPC.Peer_id.watch node.p2p end end end diff --git a/src/node/shell/node.mli b/src/node/shell/node.mli index 41b686491..8ff1232bd 100644 --- a/src/node/shell/node.mli +++ b/src/node/shell/node.mli @@ -86,19 +86,19 @@ module RPC : sig val connect : t -> P2p.Point.t -> float -> unit tzresult Lwt.t module Connection : sig - val info : t -> P2p.Gid.t -> P2p.Connection_info.t option - val kick : t -> P2p.Gid.t -> bool -> unit Lwt.t + val info : t -> P2p.Peer_id.t -> P2p.Connection_info.t option + val kick : t -> P2p.Peer_id.t -> bool -> unit Lwt.t val list : t -> P2p.Connection_info.t list val count : t -> int end - module Gid : sig + module Peer_id : sig val infos : t -> - P2p.RPC.Gid.state list -> (P2p.Gid.t * P2p.RPC.Gid.info) list - val info : t -> P2p.Gid.t -> P2p.RPC.Gid.info option - val events : t -> P2p.Gid.t -> P2p.RPC.Gid.Event.t list - val watch : t -> P2p.Gid.t -> - P2p.RPC.Gid.Event.t Lwt_stream.t * Watcher.stopper + P2p.RPC.Peer_id.state list -> (P2p.Peer_id.t * P2p.RPC.Peer_id.info) list + val info : t -> P2p.Peer_id.t -> P2p.RPC.Peer_id.info option + val events : t -> P2p.Peer_id.t -> P2p.RPC.Peer_id.Event.t list + val watch : t -> P2p.Peer_id.t -> + P2p.RPC.Peer_id.Event.t Lwt_stream.t * Watcher.stopper end module Point : sig diff --git a/src/node/shell/node_rpc.ml b/src/node/shell/node_rpc.ml index 00c087911..c3d6d67db 100644 --- a/src/node/shell/node_rpc.ml +++ b/src/node/shell/node_rpc.ml @@ -464,32 +464,32 @@ let build_rpc_directory node = (* Network : Connection *) let dir = - let implementation gid () = - Node.RPC.Network.Connection.info node gid |> RPC.Answer.return in + let implementation peer_id () = + Node.RPC.Network.Connection.info node peer_id |> RPC.Answer.return in RPC.register1 dir Services.Network.Connection.info implementation in let dir = - let implementation gid wait = - Node.RPC.Network.Connection.kick node gid wait >>= RPC.Answer.return in + let implementation peer_id wait = + Node.RPC.Network.Connection.kick node peer_id wait >>= RPC.Answer.return in RPC.register1 dir Services.Network.Connection.kick implementation in let dir = let implementation () = Node.RPC.Network.Connection.list node |> RPC.Answer.return in RPC.register0 dir Services.Network.Connection.list implementation in - (* Network : Gid *) + (* Network : Peer_id *) let dir = let implementation state = - Node.RPC.Network.Gid.infos node state |> RPC.Answer.return in - RPC.register0 dir Services.Network.Gid.infos implementation in + Node.RPC.Network.Peer_id.infos node state |> RPC.Answer.return in + RPC.register0 dir Services.Network.Peer_id.infos implementation in let dir = - let implementation gid () = - Node.RPC.Network.Gid.info node gid |> RPC.Answer.return in - RPC.register1 dir Services.Network.Gid.info implementation in + let implementation peer_id () = + Node.RPC.Network.Peer_id.info node peer_id |> RPC.Answer.return in + RPC.register1 dir Services.Network.Peer_id.info implementation in let dir = - let implementation gid monitor = + let implementation peer_id monitor = if monitor then - let stream, stopper = Node.RPC.Network.Gid.watch node gid in + let stream, stopper = Node.RPC.Network.Peer_id.watch node peer_id in let shutdown () = Watcher.shutdown stopper in let first_request = ref true in let next () = @@ -497,12 +497,12 @@ let build_rpc_directory node = Lwt_stream.get stream >|= map_option ~f:(fun i -> [i]) end else begin first_request := false ; - Lwt.return_some @@ Node.RPC.Network.Gid.events node gid + Lwt.return_some @@ Node.RPC.Network.Peer_id.events node peer_id end in RPC.Answer.return_stream { next ; shutdown } else - Node.RPC.Network.Gid.events node gid |> RPC.Answer.return in - RPC.register1 dir Services.Network.Gid.events implementation in + Node.RPC.Network.Peer_id.events node peer_id |> RPC.Answer.return in + RPC.register1 dir Services.Network.Peer_id.events implementation in (* Network : Point *) diff --git a/src/node/shell/node_rpc_services.ml b/src/node/shell/node_rpc_services.ml index 01eba12aa..1eef92842 100644 --- a/src/node/shell/node_rpc_services.ml +++ b/src/node/shell/node_rpc_services.ml @@ -486,9 +486,9 @@ end module Network = struct open P2p_types - let (gid_arg : P2p_types.Gid.t RPC.Arg.arg) = + let (peer_id_arg : P2p_types.Peer_id.t RPC.Arg.arg) = RPC.Arg.make - ~name:"gid" + ~name:"peer_id" ~descr:"A network global identifier, also known as an identity." ~destruct:(fun s -> try Ok (Crypto_box.Public_key_hash.of_b58check s) @@ -538,13 +538,13 @@ module Network = struct RPC.service ~input: empty ~output: (option P2p.Connection_info.encoding) - RPC.Path.(root / "network" / "connection" /: gid_arg) + RPC.Path.(root / "network" / "connection" /: peer_id_arg) let kick = RPC.service ~input: (obj1 (req "wait" bool)) ~output: empty - RPC.Path.(root / "network" / "connection" /: gid_arg / "kick") + RPC.Path.(root / "network" / "connection" /: peer_id_arg / "kick") end module Point = struct @@ -569,26 +569,26 @@ module Network = struct RPC.Path.(root / "network" / "point" /: point_arg / "log") end - module Gid = struct + module Peer_id = struct let infos = let filter = - obj1 (dft "filter" (list P2p.RPC.Gid.state_encoding) []) in + obj1 (dft "filter" (list P2p.RPC.Peer_id.state_encoding) []) in RPC.service ~input: filter - ~output: (list (tup2 P2p.Gid.encoding P2p.RPC.Gid.info_encoding)) - RPC.Path.(root / "network" / "gid") + ~output: (list (tup2 P2p.Peer_id.encoding P2p.RPC.Peer_id.info_encoding)) + RPC.Path.(root / "network" / "peer_id") let info = RPC.service ~input: empty - ~output: (option P2p.RPC.Gid.info_encoding) - RPC.Path.(root / "network" / "gid" /: gid_arg) + ~output: (option P2p.RPC.Peer_id.info_encoding) + RPC.Path.(root / "network" / "peer_id" /: peer_id_arg) let events = RPC.service ~input: monitor_encoding - ~output: (list P2p.RPC.Gid.Event.encoding) - RPC.Path.(root / "network" / "gid" /: gid_arg / "log") + ~output: (list P2p.RPC.Peer_id.Event.encoding) + RPC.Path.(root / "network" / "peer_id" /: peer_id_arg / "log") end end diff --git a/src/node/shell/node_rpc_services.mli b/src/node/shell/node_rpc_services.mli index 10e990557..87091afb4 100644 --- a/src/node/shell/node_rpc_services.mli +++ b/src/node/shell/node_rpc_services.mli @@ -133,9 +133,9 @@ module Network : sig val list : (unit, unit, unit, P2p.Connection_info.t list) RPC.service val info : - (unit, unit * P2p.Gid.t, unit, P2p.Connection_info.t option) RPC.service + (unit, unit * P2p.Peer_id.t, unit, P2p.Connection_info.t option) RPC.service val kick : - (unit, unit * P2p.Gid.t, bool, unit) RPC.service + (unit, unit * P2p.Peer_id.t, bool, unit) RPC.service end module Point : sig @@ -148,14 +148,14 @@ module Network : sig (unit, unit * P2p.Point.t, bool, P2p.RPC.Point.Event.t list) RPC.service end - module Gid : sig + module Peer_id : sig val infos : - (unit, unit, P2p.RPC.Gid.state list, - (P2p.Gid.t * P2p.RPC.Gid.info) list) RPC.service + (unit, unit, P2p.RPC.Peer_id.state list, + (P2p.Peer_id.t * P2p.RPC.Peer_id.info) list) RPC.service val info : - (unit, unit * P2p.Gid.t, unit, P2p.RPC.Gid.info option) RPC.service + (unit, unit * P2p.Peer_id.t, unit, P2p.RPC.Peer_id.info option) RPC.service val events : - (unit, unit * P2p.Gid.t, bool, P2p.RPC.Gid.Event.t list) RPC.service + (unit, unit * P2p.Peer_id.t, bool, P2p.RPC.Peer_id.Event.t list) RPC.service end end diff --git a/src/node/shell/tezos_p2p.ml b/src/node/shell/tezos_p2p.ml index 899d92e5e..e7419c54a 100644 --- a/src/node/shell/tezos_p2p.ml +++ b/src/node/shell/tezos_p2p.ml @@ -163,13 +163,13 @@ module RPC = struct let watch = P2p.RPC.Point.watch end - module Gid = struct - type info = P2p.RPC.Gid.info - module Event = P2p_connection_pool_types.Gid_info.Event + module Peer_id = struct + type info = P2p.RPC.Peer_id.info + module Event = P2p_connection_pool_types.Peer_info.Event - let info = P2p.RPC.Gid.info - let events = P2p.RPC.Gid.events - let infos = P2p.RPC.Gid.infos - let watch = P2p.RPC.Gid.watch + let info = P2p.RPC.Peer_id.info + let events = P2p.RPC.Peer_id.events + let infos = P2p.RPC.Peer_id.infos + let watch = P2p.RPC.Peer_id.watch end end diff --git a/src/node/shell/tezos_p2p.mli b/src/node/shell/tezos_p2p.mli index 7e6dc6d37..9e4f33e0b 100644 --- a/src/node/shell/tezos_p2p.mli +++ b/src/node/shell/tezos_p2p.mli @@ -25,8 +25,8 @@ type connection (** Access the domain of active connections *) val connections : net -> connection list -(** Return the active connection with identity [gid] *) -val find_connection : net -> Gid.t -> connection option +(** Return the active connection with identity [peer_id] *) +val find_connection : net -> Peer_id.t -> connection option (** Access the info of an active connection. *) val connection_info : net -> connection -> Connection_info.t @@ -35,8 +35,8 @@ val connection_info : net -> connection -> Connection_info.t type metadata = unit -val get_metadata : net -> Gid.t -> metadata option -val set_metadata : net -> Gid.t -> metadata -> unit +val get_metadata : net -> Peer_id.t -> metadata option +val set_metadata : net -> Peer_id.t -> metadata -> unit type net_id = Store.net_id @@ -91,8 +91,8 @@ module RPC : sig val connect : net -> Point.t -> float -> unit tzresult Lwt.t module Connection : sig - val info : net -> Gid.t -> Connection_info.t option - val kick : net -> Gid.t -> bool -> unit Lwt.t + val info : net -> Peer_id.t -> Connection_info.t option + val kick : net -> Peer_id.t -> bool -> unit Lwt.t val list : net -> Connection_info.t list val count : net -> int end @@ -107,13 +107,13 @@ module RPC : sig val watch : net -> Point.t -> Event.t Lwt_stream.t * Watcher.stopper end - module Gid : sig - open P2p.RPC.Gid + module Peer_id : sig + open P2p.RPC.Peer_id module Event = Event - val info : net -> Gid.t -> info option - val events : ?max:int -> ?rev:bool -> net -> Gid.t -> Event.t list - val infos : ?restrict:state list -> net -> (Gid.t * info) list - val watch : net -> Gid.t -> Event.t Lwt_stream.t * Watcher.stopper + val info : net -> Peer_id.t -> info option + val events : ?max:int -> ?rev:bool -> net -> Peer_id.t -> Event.t list + val infos : ?restrict:state list -> net -> (Peer_id.t * info) list + val watch : net -> Peer_id.t -> Event.t Lwt_stream.t * Watcher.stopper end end diff --git a/src/proto/bootstrap/constants_repr.ml b/src/proto/bootstrap/constants_repr.ml index 8468a376c..6bcb6e9e4 100644 --- a/src/proto/bootstrap/constants_repr.ml +++ b/src/proto/bootstrap/constants_repr.ml @@ -52,7 +52,7 @@ let default = { time_between_slots = Period_repr.of_seconds_exn (* One minute in seconds *) - 60L ; + 10L ; first_free_mining_slot = 16l ; max_signing_slot = 15 ; instructions_per_transaction = 16 * 1024 ; diff --git a/test/test_p2p_connection.ml b/test/test_p2p_connection.ml index bf041db8a..396292630 100644 --- a/test/test_p2p_connection.ml +++ b/test/test_p2p_connection.ml @@ -74,7 +74,7 @@ let connect sched addr port id = ~proof_of_work_target ~incoming:false fd (addr, port) id versions >>=? fun (info, auth_fd) -> assert (not info.incoming) ; - assert (Gid.compare info.gid id1.gid = 0) ; + assert (Peer_id.compare info.peer_id id1.peer_id = 0) ; return auth_fd let simple_msg = @@ -108,7 +108,7 @@ let server main_socket = accept sched main_socket >>=? fun (info, auth_fd) -> lwt_log_notice "Kick" >>= fun () -> assert (info.incoming) ; - assert (Gid.compare info.gid id2.gid = 0) ; + assert (Peer_id.compare info.peer_id id2.peer_id = 0) ; P2p_connection.kick auth_fd >>= fun () -> lwt_log_notice "Kick OK" >>= fun () -> (* Let's be rejected. *) diff --git a/test/test_p2p_connection_pool.ml b/test/test_p2p_connection_pool.ml index 5595a2896..175fdcd6e 100644 --- a/test/test_p2p_connection_pool.ml +++ b/test/test_p2p_connection_pool.ml @@ -144,13 +144,13 @@ let make_net points repeat n = incoming_app_message_queue_size = None ; incoming_message_queue_size = None ; outgoing_message_queue_size = None ; - known_gids_history_size = 100 ; + known_peer_ids_history_size = 100 ; known_points_history_size = 100 ; max_known_points = None ; - max_known_gids = None ; + max_known_peer_ids = None ; } in Process.detach - ~prefix:(Format.asprintf "%a " Gid.pp identity.gid) + ~prefix:(Format.asprintf "%a " Peer_id.pp identity.peer_id) begin fun () -> run_net config repeat points (fst point) (snd point) >>= function | Ok () -> Lwt.return_unit