syntax = "proto3";
enum AddressFamily {
- ipv4 = 0;
- ipv6 = 1;
+ ipv4 = 0;
+ ipv6 = 1;
}
enum LogLevel {
- ERROR = 0;
- WARNING = 1;
- NOTICE = 2;
- INFO = 3;
- DEBUG = 4;
+ ERROR = 0;
+ WARNING = 1;
+ NOTICE = 2;
+ INFO = 3;
+ DEBUG = 4;
}
enum GwLogLevel {
- notset = 0;
- debug = 10;
- info = 20;
- warning = 30;
- error = 40;
- critical = 50;
+ notset = 0;
+ debug = 10;
+ info = 20;
+ warning = 30;
+ error = 40;
+ critical = 50;
}
service Gateway {
// Set namespace's RBD trash image flag
rpc namespace_set_rbd_trash_image(namespace_set_rbd_trash_image_req) returns (req_status) {}
+ // Set namespace's auto resize flag
+ rpc namespace_set_auto_resize(namespace_set_auto_resize_req) returns (req_status) {}
+
// Deletes a namespace
rpc namespace_delete(namespace_delete_req) returns (req_status) {}
// List subsystems
rpc list_subsystems(list_subsystems_req) returns(subsystems_info_cli) {}
- // Gets subsystems
- rpc get_subsystems(get_subsystems_req) returns(subsystems_info) {}
+ // Gets subsystems
+ rpc get_subsystems(get_subsystems_req) returns(subsystems_info) {}
// Set gateway ANA states
rpc set_ana_state(ana_info) returns(req_status) {}
// Gets spdk nvmf log flags and level
rpc get_spdk_nvmf_log_flags_and_level(get_spdk_nvmf_log_flags_and_level_req) returns(spdk_nvmf_log_flags_and_level_info) {}
- // Disables spdk nvmf logs
- rpc disable_spdk_nvmf_logs(disable_spdk_nvmf_logs_req) returns(req_status) {}
+ // Disables spdk nvmf logs
+ rpc disable_spdk_nvmf_logs(disable_spdk_nvmf_logs_req) returns(req_status) {}
// Set spdk nvmf logs
rpc set_spdk_nvmf_logs(set_spdk_nvmf_logs_req) returns(req_status) {}
optional uint64 rw_mbytes_per_second = 5;
optional uint64 r_mbytes_per_second = 6;
optional uint64 w_mbytes_per_second = 7;
+ optional bool force = 8;
}
message namespace_change_load_balancing_group_req {
uint32 nsid = 2;
optional string OBSOLETE_uuid = 3;
int32 anagrpid = 4;
- optional bool auto_lb_logic = 5;
+ optional bool auto_lb_logic = 5;
}
message namespace_change_visibility_req {
bool trash_image = 3;
}
+message namespace_set_auto_resize_req {
+ string subsystem_nqn = 1;
+ uint32 nsid = 2;
+ bool auto_resize = 3;
+}
+
message namespace_delete_req {
string subsystem_nqn = 1;
uint32 nsid = 2;
string subsystem_nqn = 1;
uint32 nsid = 2;
string host_nqn = 3;
+ optional bool force = 4;
}
message namespace_delete_host_req {
bool enable_ha = 4;
optional bool no_group_append = 5;
optional string dhchap_key = 6;
+ optional bool key_encrypted = 7;
}
message delete_subsystem_req {
string host_nqn = 2;
optional string psk = 3;
optional string dhchap_key = 4;
+ optional bool psk_encrypted = 5;
+ optional bool key_encrypted = 6;
}
message change_host_key_req {
optional AddressFamily adrfam = 5;
optional uint32 trsvcid = 6;
optional bool secure = 7;
+ optional bool verify_host_name = 8;
}
message delete_listener_req {
}
message get_spdk_nvmf_log_flags_and_level_req {
+ optional bool all_log_flags = 1;
}
message disable_spdk_nvmf_logs_req {
+ repeated string extra_log_flags = 1;
}
message set_spdk_nvmf_logs_req {
optional LogLevel log_level = 1;
optional LogLevel print_level = 2;
+ repeated string extra_log_flags = 3;
}
message get_gateway_info_req {
// 0Fh ANA Change state 8.20.3.5
// All others Reserved
enum ana_state {
- UNSET = 0;
- OPTIMIZED = 1;
- NON_OPTIMIZED = 2;
- INACCESSIBLE = 3;
+ UNSET = 0;
+ OPTIMIZED = 1;
+ NON_OPTIMIZED = 2;
+ INACCESSIBLE = 3;
}
message ana_group_state {
}
message subsystems_info {
- repeated subsystem subsystems = 1;
+ repeated subsystem subsystems = 1;
}
message subsystem {
- string nqn = 1;
- string subtype = 2;
- repeated listen_address listen_addresses = 3;
- repeated host hosts = 4;
- bool allow_any_host = 5;
- optional string serial_number = 6;
- optional string model_number = 7;
- optional uint32 max_namespaces = 8;
- optional uint32 min_cntlid = 9;
- optional uint32 max_cntlid = 10;
- repeated namespace namespaces = 11;
- optional bool has_dhchap_key = 12;
+ string nqn = 1;
+ string subtype = 2;
+ repeated listen_address listen_addresses = 3;
+ repeated host hosts = 4;
+ bool allow_any_host = 5;
+ optional string serial_number = 6;
+ optional string model_number = 7;
+ optional uint32 max_namespaces = 8;
+ optional uint32 min_cntlid = 9;
+ optional uint32 max_cntlid = 10;
+ repeated namespace namespaces = 11;
+ optional bool has_dhchap_key = 12;
}
message listen_address {
- string trtype = 1;
- string adrfam = 2;
- string traddr = 3;
- string trsvcid = 4;
- optional string transport = 5;
- optional bool secure = 6;
+ string trtype = 1;
+ string adrfam = 2;
+ string traddr = 3;
+ string trsvcid = 4;
+ optional string transport = 5;
+ optional bool secure = 6;
}
message namespace {
- uint32 nsid = 1;
- string name = 2;
- optional string bdev_name = 3;
- optional string nguid = 4;
- optional string uuid = 5;
- optional uint32 anagrpid = 6;
- optional string nonce = 7;
- optional bool auto_visible = 8;
- repeated string hosts = 9;
+ uint32 nsid = 1;
+ string name = 2;
+ optional string bdev_name = 3;
+ optional string nguid = 4;
+ optional string uuid = 5;
+ optional uint32 anagrpid = 6;
+ optional string nonce = 7;
+ optional bool auto_visible = 8;
+ repeated string hosts = 9;
}
message subsystems_info_cli {
string subtype = 8;
uint32 max_namespaces = 9;
optional bool has_dhchap_key = 10;
- optional bool allow_any_host = 11;
+ optional bool allow_any_host = 11;
+ optional bool created_without_key = 12;
}
message gateway_info {
int32 status = 8;
string error_message = 9;
optional string spdk_version = 10;
- uint32 load_balancing_group = 11;
+ uint32 load_balancing_group = 11;
string hostname = 12;
optional uint32 max_subsystems = 13;
optional uint32 max_namespaces = 14;
optional uint32 max_hosts_per_subsystem = 15;
optional uint32 max_namespaces_per_subsystem = 16;
+ optional uint32 max_hosts = 17;
}
message cli_version {
string nqn = 1;
string traddr = 2;
uint32 trsvcid = 3;
- string trtype = 4;
+ string trtype = 4;
AddressFamily adrfam = 5;
bool connected = 6;
int32 qpairs_count = 7;
}
message spdk_log_flag_info {
- string name = 1;
- bool enabled = 2;
+ string name = 1;
+ bool enabled = 2;
}
message spdk_nvmf_log_flags_and_level_info {