kinetic-client

Client API for Seagate's Kinetic drives
IN THIS PACKAGE
Module Kinetic_types

Types

type local = {
protocol_version : string option;
}
type message_auth_type =
| Invalid_auth_type
| Hmacauth
| Pinauth
| Unsolicitedstatus
type message_hmacauth = {
identity : int64 option;
hmac : bytes option;
}
type message_pinauth = {
pin : bytes option;
}
type message = {
auth_type : message_auth_type option;
hmac_auth : message_hmacauth option;
pin_auth : message_pinauth option;
command_bytes : bytes option;
}
type command_message_type =
| Invalid_message_type
| Get
| Get_response
| Put
| Put_response
| Delete
| Delete_response
| Getnext
| Getnext_response
| Getprevious
| Getprevious_response
| Getkeyrange
| Getkeyrange_response
| Getversion
| Getversion_response
| Setup
| Setup_response
| Getlog
| Getlog_response
| Security
| Security_response
| Peer2_peerpush
| Peer2_peerpush_response
| Noop
| Noop_response
| Flushalldata
| Flushalldata_response
| Pinop
| Pinop_response
| Mediascan
| Mediascan_response
| Mediaoptimize
| Mediaoptimize_response
| Start_batch
| Start_batch_response
| End_batch
| End_batch_response
| Abort_batch
| Abort_batch_response
| Set_power_level
| Set_power_level_response
type command_priority =
| Normal
| Lowest
| Lower
| Low
| Lowernormal
| Highernormal
| High
| Higher
| Highest
type command_header = {
cluster_version : int64 option;
connection_id : int64 option;
sequence : int64 option;
ack_sequence : int64 option;
message_type : command_message_type option;
timeout : int64 option;
early_exit : bool option;
priority : command_priority option;
time_quanta : int64 option;
batch_id : int32 option;
}
type command_algorithm =
| Invalid_algorithm
| Sha1
| Sha2
| Sha3
| Crc32_c
| Crc64
| Crc32
type command_synchronization =
| Invalid_synchronization
| Writethrough
| Writeback
| Flush
type command_key_value = {
new_version : bytes option;
force : bool option;
key : bytes option;
db_version : bytes option;
tag : bytes option;
algorithm : command_algorithm option;
metadata_only : bool option;
synchronization : command_synchronization option;
}
type command_range = {
start_key : bytes option;
end_key : bytes option;
start_key_inclusive : bool option;
end_key_inclusive : bool option;
max_returned : int32 option;
reverse : bool option;
keys : bytes list;
}
type command_setup_setup_op_type =
| Invalid_setupop
| Firmware_setupop
| Cluster_version_setupop
type command_setup = {
new_cluster_version : int64 option;
setup_op_type : command_setup_setup_op_type option;
}
type command_p2_poperation_peer = {
hostname : string option;
port : int32 option;
tls : bool option;
}
type command_status_status_code =
| Invalid_status_code
| Not_attempted
| Success
| Hmac_failure
| Not_authorized
| Version_failure
| Internal_error
| Header_required
| Not_found
| Version_mismatch
| Service_busy
| Expired
| Data_error
| Perm_data_error
| Remote_connection_error
| No_space
| No_such_hmac_algorithm
| Invalid_request
| Nested_operation_errors
| Device_locked
| Device_already_unlocked
| Connection_terminated
| Invalid_batch
| Hibernate
| Shutdown
type command_status = {
code : command_status_status_code option;
status_message : string option;
detailed_message : bytes option;
}
type command_p2_poperation = {
peer : command_p2_poperation_peer option;
operation : command_p2_poperation_operation list;
all_child_operations_succeeded : bool option;
}
and command_p2_poperation_operation = {
key : bytes option;
version : bytes option;
new_key : bytes option;
force : bool option;
status : command_status option;
p2pop : command_p2_poperation option;
}
type command_get_log_type =
| Invalid_type
| Utilizations
| Temperatures
| Capacities
| Configuration
| Statistics
| Messages
| Limits
| Device
type command_get_log_utilization = {
name : string option;
value : float option;
}
type command_get_log_temperature = {
name : string option;
current : float option;
minimum : float option;
maximum : float option;
target : float option;
}
type command_get_log_capacity = {
nominal_capacity_in_bytes : int64 option;
portion_full : float option;
}
type command_get_log_configuration_interface = {
name : string option;
mac : bytes option;
ipv4_address : bytes option;
ipv6_address : bytes option;
}
type command_power_level =
| Invalid_level
| Operational
| Hibernate
| Shutdown
| Fail
type command_get_log_configuration = {
vendor : string option;
model : string option;
serial_number : bytes option;
world_wide_name : bytes option;
version : string option;
compilation_date : string option;
source_hash : string option;
protocol_version : string option;
protocol_compilation_date : string option;
protocol_source_hash : string option;
interface : command_get_log_configuration_interface list;
port : int32 option;
tls_port : int32 option;
current_power_level : command_power_level option;
}
type command_get_log_statistics = {
message_type : command_message_type option;
count : int64 option;
bytes : int64 option;
}
type command_get_log_limits = {
max_key_size : int32 option;
max_value_size : int32 option;
max_version_size : int32 option;
max_tag_size : int32 option;
max_connections : int32 option;
max_outstanding_read_requests : int32 option;
max_outstanding_write_requests : int32 option;
max_message_size : int32 option;
max_key_range_count : int32 option;
max_identity_count : int32 option;
max_pin_size : int32 option;
max_operation_count_per_batch : int32 option;
max_batch_count_per_device : int32 option;
max_batch_size : int32 option;
max_deletes_per_batch : int32 option;
}
type command_get_log_device = {
name : bytes option;
}
type command_get_log = {
types : command_get_log_type list;
utilizations : command_get_log_utilization list;
temperatures : command_get_log_temperature list;
capacity : command_get_log_capacity option;
configuration : command_get_log_configuration option;
statistics : command_get_log_statistics list;
messages : bytes option;
limits : command_get_log_limits option;
device : command_get_log_device option;
}
type command_security_acl_hmacalgorithm =
| Invalid_hmac_algorithm
| Hmac_sha1
type command_security_acl_permission =
| Invalid_permission
| Read
| Write
| Delete
| Range
| Setup
| P2_pop
| Getlog
| Security
| Power_management
type command_security_acl_scope = {
offset : int64 option;
value : bytes option;
permission : command_security_acl_permission list;
tls_required : bool option;
}
type command_security_acl = {
identity : int64 option;
key : bytes option;
hmac_algorithm : command_security_acl_hmacalgorithm option;
scope : command_security_acl_scope list;
max_priority : command_priority option;
}
type command_security_security_op_type =
| Invalid_securityop
| Acl_securityop
| Erase_pin_securityop
| Lock_pin_securityop
type command_security = {
acl : command_security_acl list;
old_lock_pin : bytes option;
new_lock_pin : bytes option;
old_erase_pin : bytes option;
new_erase_pin : bytes option;
security_op_type : command_security_security_op_type option;
}
type command_pin_operation_pin_op_type =
| Invalid_pinop
| Unlock_pinop
| Lock_pinop
| Erase_pinop
| Secure_erase_pinop
type command_pin_operation = {
pin_op_type : command_pin_operation_pin_op_type option;
}
type command_batch = {
count : int32 option;
sequence : int64 list;
failed_sequence : int64 option;
}
type command_power_management = {
level : command_power_level option;
}
type command_body = {
key_value : command_key_value option;
range : command_range option;
setup : command_setup option;
p2p_operation : command_p2_poperation option;
get_log : command_get_log option;
security : command_security option;
pin_op : command_pin_operation option;
batch : command_batch option;
power : command_power_management option;
}
type command = {
header : command_header option;
body : command_body option;
status : command_status option;
}

Default values

val default_local : ?protocol_version:string option -> unit -> local

default_local () is the default value for type local

val default_message_auth_type : unit -> message_auth_type

default_message_auth_type () is the default value for type message_auth_type

val default_message_hmacauth : ?identity:int64 option -> ?hmac:bytes option -> unit -> message_hmacauth

default_message_hmacauth () is the default value for type message_hmacauth

val default_message_pinauth : ?pin:bytes option -> unit -> message_pinauth

default_message_pinauth () is the default value for type message_pinauth

val default_message : ?auth_type:message_auth_type option -> ?hmac_auth:message_hmacauth option -> ?pin_auth:message_pinauth option -> ?command_bytes:bytes option -> unit -> message

default_message () is the default value for type message

val default_command_message_type : unit -> command_message_type

default_command_message_type () is the default value for type command_message_type

val default_command_priority : unit -> command_priority

default_command_priority () is the default value for type command_priority

val default_command_header : ?cluster_version:int64 option -> ?connection_id:int64 option -> ?sequence:int64 option -> ?ack_sequence:int64 option -> ?message_type:command_message_type option -> ?timeout:int64 option -> ?early_exit:bool option -> ?priority:command_priority option -> ?time_quanta:int64 option -> ?batch_id:int32 option -> unit -> command_header

default_command_header () is the default value for type command_header

val default_command_algorithm : unit -> command_algorithm

default_command_algorithm () is the default value for type command_algorithm

val default_command_synchronization : unit -> command_synchronization

default_command_synchronization () is the default value for type command_synchronization

val default_command_key_value : ?new_version:bytes option -> ?force:bool option -> ?key:bytes option -> ?db_version:bytes option -> ?tag:bytes option -> ?algorithm:command_algorithm option -> ?metadata_only:bool option -> ?synchronization:command_synchronization option -> unit -> command_key_value

default_command_key_value () is the default value for type command_key_value

val default_command_range : ?start_key:bytes option -> ?end_key:bytes option -> ?start_key_inclusive:bool option -> ?end_key_inclusive:bool option -> ?max_returned:int32 option -> ?reverse:bool option -> ?keys:bytes list -> unit -> command_range

default_command_range () is the default value for type command_range

val default_command_setup_setup_op_type : unit -> command_setup_setup_op_type

default_command_setup_setup_op_type () is the default value for type command_setup_setup_op_type

val default_command_setup : ?new_cluster_version:int64 option -> ?setup_op_type:command_setup_setup_op_type option -> unit -> command_setup

default_command_setup () is the default value for type command_setup

val default_command_p2_poperation_peer : ?hostname:string option -> ?port:int32 option -> ?tls:bool option -> unit -> command_p2_poperation_peer

default_command_p2_poperation_peer () is the default value for type command_p2_poperation_peer

val default_command_status_status_code : unit -> command_status_status_code

default_command_status_status_code () is the default value for type command_status_status_code

val default_command_status : ?code:command_status_status_code option -> ?status_message:string option -> ?detailed_message:bytes option -> unit -> command_status

default_command_status () is the default value for type command_status

val default_command_p2_poperation : ?peer:command_p2_poperation_peer option -> ?operation:command_p2_poperation_operation list -> ?all_child_operations_succeeded:bool option -> unit -> command_p2_poperation

default_command_p2_poperation () is the default value for type command_p2_poperation

val default_command_p2_poperation_operation : ?key:bytes option -> ?version:bytes option -> ?new_key:bytes option -> ?force:bool option -> ?status:command_status option -> ?p2pop:command_p2_poperation option -> unit -> command_p2_poperation_operation

default_command_p2_poperation_operation () is the default value for type command_p2_poperation_operation

val default_command_get_log_type : unit -> command_get_log_type

default_command_get_log_type () is the default value for type command_get_log_type

val default_command_get_log_utilization : ?name:string option -> ?value:float option -> unit -> command_get_log_utilization

default_command_get_log_utilization () is the default value for type command_get_log_utilization

val default_command_get_log_temperature : ?name:string option -> ?current:float option -> ?minimum:float option -> ?maximum:float option -> ?target:float option -> unit -> command_get_log_temperature

default_command_get_log_temperature () is the default value for type command_get_log_temperature

val default_command_get_log_capacity : ?nominal_capacity_in_bytes:int64 option -> ?portion_full:float option -> unit -> command_get_log_capacity

default_command_get_log_capacity () is the default value for type command_get_log_capacity

val default_command_get_log_configuration_interface : ?name:string option -> ?mac:bytes option -> ?ipv4_address:bytes option -> ?ipv6_address:bytes option -> unit -> command_get_log_configuration_interface

default_command_get_log_configuration_interface () is the default value for type command_get_log_configuration_interface

val default_command_power_level : unit -> command_power_level

default_command_power_level () is the default value for type command_power_level

val default_command_get_log_configuration : ?vendor:string option -> ?model:string option -> ?serial_number:bytes option -> ?world_wide_name:bytes option -> ?version:string option -> ?compilation_date:string option -> ?source_hash:string option -> ?protocol_version:string option -> ?protocol_compilation_date:string option -> ?protocol_source_hash:string option -> ?interface:command_get_log_configuration_interface list -> ?port:int32 option -> ?tls_port:int32 option -> ?current_power_level:command_power_level option -> unit -> command_get_log_configuration

default_command_get_log_configuration () is the default value for type command_get_log_configuration

val default_command_get_log_statistics : ?message_type:command_message_type option -> ?count:int64 option -> ?bytes:int64 option -> unit -> command_get_log_statistics

default_command_get_log_statistics () is the default value for type command_get_log_statistics

val default_command_get_log_limits : ?max_key_size:int32 option -> ?max_value_size:int32 option -> ?max_version_size:int32 option -> ?max_tag_size:int32 option -> ?max_connections:int32 option -> ?max_outstanding_read_requests:int32 option -> ?max_outstanding_write_requests:int32 option -> ?max_message_size:int32 option -> ?max_key_range_count:int32 option -> ?max_identity_count:int32 option -> ?max_pin_size:int32 option -> ?max_operation_count_per_batch:int32 option -> ?max_batch_count_per_device:int32 option -> ?max_batch_size:int32 option -> ?max_deletes_per_batch:int32 option -> unit -> command_get_log_limits

default_command_get_log_limits () is the default value for type command_get_log_limits

val default_command_get_log_device : ?name:bytes option -> unit -> command_get_log_device

default_command_get_log_device () is the default value for type command_get_log_device

val default_command_get_log : ?types:command_get_log_type list -> ?utilizations:command_get_log_utilization list -> ?temperatures:command_get_log_temperature list -> ?capacity:command_get_log_capacity option -> ?configuration:command_get_log_configuration option -> ?statistics:command_get_log_statistics list -> ?messages:bytes option -> ?limits:command_get_log_limits option -> ?device:command_get_log_device option -> unit -> command_get_log

default_command_get_log () is the default value for type command_get_log

val default_command_security_acl_hmacalgorithm : unit -> command_security_acl_hmacalgorithm

default_command_security_acl_hmacalgorithm () is the default value for type command_security_acl_hmacalgorithm

val default_command_security_acl_permission : unit -> command_security_acl_permission

default_command_security_acl_permission () is the default value for type command_security_acl_permission

val default_command_security_acl_scope : ?offset:int64 option -> ?value:bytes option -> ?permission:command_security_acl_permission list -> ?tls_required:bool option -> unit -> command_security_acl_scope

default_command_security_acl_scope () is the default value for type command_security_acl_scope

val default_command_security_acl : ?identity:int64 option -> ?key:bytes option -> ?hmac_algorithm:command_security_acl_hmacalgorithm option -> ?scope:command_security_acl_scope list -> ?max_priority:command_priority option -> unit -> command_security_acl

default_command_security_acl () is the default value for type command_security_acl

val default_command_security_security_op_type : unit -> command_security_security_op_type

default_command_security_security_op_type () is the default value for type command_security_security_op_type

val default_command_security : ?acl:command_security_acl list -> ?old_lock_pin:bytes option -> ?new_lock_pin:bytes option -> ?old_erase_pin:bytes option -> ?new_erase_pin:bytes option -> ?security_op_type:command_security_security_op_type option -> unit -> command_security

default_command_security () is the default value for type command_security

val default_command_pin_operation_pin_op_type : unit -> command_pin_operation_pin_op_type

default_command_pin_operation_pin_op_type () is the default value for type command_pin_operation_pin_op_type

val default_command_pin_operation : ?pin_op_type:command_pin_operation_pin_op_type option -> unit -> command_pin_operation

default_command_pin_operation () is the default value for type command_pin_operation

val default_command_batch : ?count:int32 option -> ?sequence:int64 list -> ?failed_sequence:int64 option -> unit -> command_batch

default_command_batch () is the default value for type command_batch

val default_command_power_management : ?level:command_power_level option -> unit -> command_power_management

default_command_power_management () is the default value for type command_power_management

val default_command_body : ?key_value:command_key_value option -> ?range:command_range option -> ?setup:command_setup option -> ?p2p_operation:command_p2_poperation option -> ?get_log:command_get_log option -> ?security:command_security option -> ?pin_op:command_pin_operation option -> ?batch:command_batch option -> ?power:command_power_management option -> unit -> command_body

default_command_body () is the default value for type command_body

val default_command : ?header:command_header option -> ?body:command_body option -> ?status:command_status option -> unit -> command

default_command () is the default value for type command