diff --git a/src/lib_p2p/p2p_conn.ml b/src/lib_p2p/p2p_conn.ml index f21d1885e739cf157d7d69c7136b050306e32616..69512fd7d6ce9a96b3442210087069dd0592a2fc 100644 --- a/src/lib_p2p/p2p_conn.ml +++ b/src/lib_p2p/p2p_conn.ml @@ -105,7 +105,7 @@ let rec worker_loop (t : ('msg, 'peer, 'conn) t) callback = worker_loop t callback | Ok (_, Disconnect) | Error (P2p_errors.Connection_closed :: _) -> Error_monad.cancel_with_exceptions t.canceler - | Error (P2p_errors.Decoding_error _ :: _) -> + | Error (Tezos_base.Data_encoding_wrapper.Decoding_error _ :: _) -> let* () = t.greylister ~motive:"decoding error" in Error_monad.cancel_with_exceptions t.canceler | Error (Canceled :: _) -> Lwt.return_unit diff --git a/src/lib_p2p/p2p_connect_handler.ml b/src/lib_p2p/p2p_connect_handler.ml index 6e346f62780b5f8187949614d8638cdf3896aad1..0c629a1c8e85d7a067528c5cc7ed6aca4a3651bb 100644 --- a/src/lib_p2p/p2p_connect_handler.ml +++ b/src/lib_p2p/p2p_connect_handler.ml @@ -393,7 +393,7 @@ let raw_authenticate t ?point_info canceler scheduled_conn point = | Tezos_base.Data_encoding_wrapper.Encoding_error _ | Tezos_base.Data_encoding_wrapper .Unexpected_size_of_encoded_value - | P2p_errors.Decoding_error _ + | Tezos_base.Data_encoding_wrapper.Decoding_error _ | P2p_errors.Invalid_chunks_size _ -> P2p_pool.greylist_addr t.pool (fst point) | _ -> ()) diff --git a/src/lib_p2p/p2p_socket.ml b/src/lib_p2p/p2p_socket.ml index bf121b7bd30d24dcd285d9c4dc805a912f97131e..f901b652da6e4f8d566067b437f8b133c2039b51 100644 --- a/src/lib_p2p/p2p_socket.ml +++ b/src/lib_p2p/p2p_socket.ml @@ -223,10 +223,12 @@ module Connection_message = struct in let buf = Bytes.unsafe_to_string buf in match Data_encoding.Binary.read encoding buf pos len with - | Error re -> tzfail (P2p_errors.Decoding_error re) + | Error re -> tzfail (Tezos_base.Data_encoding_wrapper.Decoding_error re) | Ok (next_pos, message) -> if next_pos <> pos + len then - tzfail (P2p_errors.Decoding_error Data_encoding.Binary.Extra_bytes) + tzfail + (Tezos_base.Data_encoding_wrapper.Decoding_error + Data_encoding.Binary.Extra_bytes) else (* TODO: https://gitlab.com/tezos/tezos/-/issues/4604 @@ -275,10 +277,12 @@ module Metadata = struct let length = String.length buf in let encoding = metadata_config.P2p_params.conn_meta_encoding in match Data_encoding.Binary.read encoding buf 0 length with - | Error re -> tzfail (P2p_errors.Decoding_error re) + | Error re -> tzfail (Tezos_base.Data_encoding_wrapper.Decoding_error re) | Ok (read_len, message) -> if read_len <> length then - tzfail (P2p_errors.Decoding_error Data_encoding.Binary.Extra_bytes) + tzfail + (Tezos_base.Data_encoding_wrapper.Decoding_error + Data_encoding.Binary.Extra_bytes) else return message end @@ -358,10 +362,12 @@ module Ack = struct let buf = Bytes.unsafe_to_string buf in let length = String.length buf in match Data_encoding.Binary.read encoding buf 0 length with - | Error re -> tzfail (P2p_errors.Decoding_error re) + | Error re -> tzfail (Tezos_base.Data_encoding_wrapper.Decoding_error re) | Ok (read_len, message) -> if read_len <> length then - tzfail (P2p_errors.Decoding_error Data_encoding.Binary.Extra_bytes) + tzfail + (Tezos_base.Data_encoding_wrapper.Decoding_error + Data_encoding.Binary.Extra_bytes) else return message end @@ -490,7 +496,7 @@ module Reader = struct Events.(emit read_error) (st.conn.info.P2p_connection.Info.peer_id, err) in - tzfail (P2p_errors.Decoding_error err) + tzfail (Tezos_base.Data_encoding_wrapper.Decoding_error err) | Await decode_next_buf -> let* buf = Crypto.read_chunk diff --git a/src/lib_p2p/test/test_p2p_socket.ml b/src/lib_p2p/test/test_p2p_socket.ml index 5a24b356079477b96b3587a122cd8a0eea8af1de..da4e26ac14b6b2e3ff1fc841f178ea478282c7ba 100644 --- a/src/lib_p2p/test/test_p2p_socket.ml +++ b/src/lib_p2p/test/test_p2p_socket.ml @@ -71,7 +71,7 @@ let is_connection_closed = function false let is_decoding_error = function - | Error (Tezos_p2p_services.P2p_errors.Decoding_error _ :: _) -> true + | Error (Tezos_base.Data_encoding_wrapper.Decoding_error _ :: _) -> true | Ok _ -> false | Error err -> Tezt.Log.info "Error: %a" pp_print_trace err ; diff --git a/src/lib_p2p_services/p2p_errors.ml b/src/lib_p2p_services/p2p_errors.ml index 330d4bc2d9ed620a15d7a5c44a22486f65e1611e..ce0e1a7841b7a5bdd34f364594843ee57f043c17 100644 --- a/src/lib_p2p_services/p2p_errors.ml +++ b/src/lib_p2p_services/p2p_errors.ml @@ -71,8 +71,6 @@ type error += type error += Rejected_no_common_protocol of {announced : Network_version.t} -type error += Decoding_error of Data_encoding.Binary.read_error - type error += Myself of P2p_connection.Id.t type error += Not_enough_proof_of_work of P2p_peer.Id.t @@ -172,21 +170,6 @@ let () = (function | Rejected_no_common_protocol {announced} -> Some announced | _ -> None) (fun announced -> Rejected_no_common_protocol {announced}) ; - (* Decoding error *) - register_error_kind - `Permanent - ~id:"node.p2p_socket.decoding_error" - ~title:"Decoding error" - ~description:"An error occurred while decoding." - ~pp:(fun ppf re -> - Format.fprintf - ppf - "An error occurred while decoding: %a." - Data_encoding.Binary.pp_read_error - re) - Data_encoding.(obj1 @@ req "read_error" Binary.read_error_encoding) - (function Decoding_error re -> Some re | _ -> None) - (fun re -> Decoding_error re) ; (* Myself *) register_error_kind `Permanent diff --git a/src/lib_p2p_services/p2p_errors.mli b/src/lib_p2p_services/p2p_errors.mli index cf5f670d53da6c2569f2666d1c11bda317b2ae85..4caec506fbfea3d5a823cbdacb4bab56dd0444af 100644 --- a/src/lib_p2p_services/p2p_errors.mli +++ b/src/lib_p2p_services/p2p_errors.mli @@ -48,8 +48,6 @@ type error += type error += Rejected_no_common_protocol of {announced : Network_version.t} -type error += Decoding_error of Data_encoding.Binary.read_error - type error += Myself of P2p_connection.Id.t type error += Not_enough_proof_of_work of P2p_peer.Id.t