Tezos_validation.External_validationSourcetype parameters = {context_root : string;protocol_root : string;genesis : Tezos_base.TzPervasives.Genesis.t;readonly : bool;data_dir : string;sandbox_parameters : Tezos_base.TzPervasives.Data_encoding.json option;user_activated_upgrades : Tezos_base.TzPervasives.User_activated.upgrades;user_activated_protocol_overrides : Tezos_base.TzPervasives.User_activated.protocol_overrides;operation_metadata_size_limit : Tezos_shell_services.Shell_limits.operation_metadata_size_limit;dal_config : Tezos_crypto_dal.Cryptobox.Config.t;internal_events : Tezos_base.Internal_event_config.t;}type _ request = | Apply : {chain_id : Tezos_base.TzPervasives.Chain_id.t;block_header : Tezos_base.TzPervasives.Block_header.t;predecessor_block_header : Tezos_base.TzPervasives.Block_header.t;predecessor_block_metadata_hash : Tezos_base.TzPervasives.Block_metadata_hash.t
option;predecessor_ops_metadata_hash : Tezos_base.TzPervasives.Operation_metadata_list_list_hash.t
option;predecessor_resulting_context_hash : Tezos_base.TzPervasives.Context_hash.t;operations : Block_validation.operation list list;max_operations_ttl : int;should_precheck : bool;simulate : bool;} -> Block_validation.result request| Preapply : {chain_id : Tezos_base.TzPervasives.Chain_id.t;timestamp : Tezos_base.TzPervasives.Time.Protocol.t;protocol_data : bytes;live_blocks : Tezos_base.TzPervasives.Block_hash.Set.t;live_operations : Tezos_base.TzPervasives.Operation_hash.Set.t;predecessor_shell_header : Tezos_base.TzPervasives.Block_header.shell_header;predecessor_hash : Tezos_base.TzPervasives.Block_hash.t;predecessor_max_operations_ttl : int;predecessor_block_metadata_hash : Tezos_base.TzPervasives.Block_metadata_hash.t
option;predecessor_ops_metadata_hash : Tezos_base.TzPervasives.Operation_metadata_list_list_hash.t
option;predecessor_resulting_context_hash : Tezos_base.TzPervasives.Context_hash.t;operations : Block_validation.operation list list;} -> (Tezos_base.TzPervasives.Block_header.shell_header
* Tezos_base.TzPervasives.error Tezos_shell_services.Preapply_result.t
list)
request| Precheck : {chain_id : Tezos_base.TzPervasives.Chain_id.t;predecessor_block_header : Tezos_base.TzPervasives.Block_header.t;predecessor_block_hash : Tezos_base.TzPervasives.Block_hash.t;predecessor_resulting_context_hash : Tezos_base.TzPervasives.Context_hash.t;header : Tezos_base.TzPervasives.Block_header.t;operations : Block_validation.operation list list;hash : Tezos_base.TzPervasives.Block_hash.t;} -> unit request| Commit_genesis : {chain_id : Tezos_base.TzPervasives.Chain_id.t;} -> Tezos_base.TzPervasives.Context_hash.t request| Fork_test_chain : {chain_id : Tezos_base.TzPervasives.Chain_id.t;context_hash : Tezos_base.TzPervasives.Context_hash.t;forked_header : Tezos_base.TzPervasives.Block_header.t;} -> Tezos_base.TzPervasives.Block_header.t request| Context_garbage_collection : {context_hash : Tezos_base.TzPervasives.Context_hash.t;gc_lockfile_path : string;} -> unit request| Context_split : unit request| Terminate : never request| Reconfigure_event_logging : Tezos_base_unix.Internal_event_unix.Configuration.t ->
unit
requestval send :
Lwt_io.output_channel ->
'a Tezos_base.TzPervasives.Data_encoding.t ->
'a ->
unit Lwt.tval recv_result :
Lwt_io.input_channel ->
'a Tezos_base.TzPervasives.Data_encoding.t ->
'a Tezos_base.TzPervasives.tzresult Lwt.tThe prefix for the validation socket filename.
Do not use it directly except for documentation purposes; use socket_path instead.
Get the validation socket path.
socket_dir is the directory where the file should be put. pid is the process ID of the validator process.
val create_socket_listen :
canceler:Lwt_canceler.t ->
max_requests:int ->
socket_path:string ->
Lwt_unix.file_descr Tezos_base.TzPervasives.tzresult Lwt.tval create_socket_connect :
canceler:Lwt_canceler.t ->
socket_path:string ->
Lwt_unix.file_descr Tezos_base.TzPervasives.tzresult Lwt.t