iscsi/rpc: Extract dump config into functions
This patch is a preparation to match response of dump with request of construct (load). Change-Id: I08d0e860ecd842fabf2bbea0b888a60ffd51b055 Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-on: https://review.gerrithub.io/399992 Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com> Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
This commit is contained in:
parent
3327842974
commit
7ee8684c84
@ -45,28 +45,11 @@
|
|||||||
#include "spdk_internal/log.h"
|
#include "spdk_internal/log.h"
|
||||||
|
|
||||||
static void
|
static void
|
||||||
spdk_rpc_get_initiator_groups(struct spdk_jsonrpc_request *request,
|
dump_initiator_group(struct spdk_json_write_ctx *w, struct spdk_iscsi_init_grp *ig)
|
||||||
const struct spdk_json_val *params)
|
|
||||||
{
|
{
|
||||||
struct spdk_json_write_ctx *w;
|
|
||||||
struct spdk_iscsi_init_grp *ig;
|
|
||||||
struct spdk_iscsi_initiator_name *iname;
|
struct spdk_iscsi_initiator_name *iname;
|
||||||
struct spdk_iscsi_initiator_netmask *imask;
|
struct spdk_iscsi_initiator_netmask *imask;
|
||||||
|
|
||||||
if (params != NULL) {
|
|
||||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS,
|
|
||||||
"get_initiator_groups requires no parameters");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
w = spdk_jsonrpc_begin_result(request);
|
|
||||||
if (w == NULL) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
spdk_json_write_array_begin(w);
|
|
||||||
|
|
||||||
TAILQ_FOREACH(ig, &g_spdk_iscsi.ig_head, tailq) {
|
|
||||||
spdk_json_write_object_begin(w);
|
spdk_json_write_object_begin(w);
|
||||||
|
|
||||||
spdk_json_write_name(w, "initiators");
|
spdk_json_write_name(w, "initiators");
|
||||||
@ -87,6 +70,30 @@ spdk_rpc_get_initiator_groups(struct spdk_jsonrpc_request *request,
|
|||||||
spdk_json_write_array_end(w);
|
spdk_json_write_array_end(w);
|
||||||
|
|
||||||
spdk_json_write_object_end(w);
|
spdk_json_write_object_end(w);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
spdk_rpc_get_initiator_groups(struct spdk_jsonrpc_request *request,
|
||||||
|
const struct spdk_json_val *params)
|
||||||
|
{
|
||||||
|
struct spdk_json_write_ctx *w;
|
||||||
|
struct spdk_iscsi_init_grp *ig;
|
||||||
|
|
||||||
|
if (params != NULL) {
|
||||||
|
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS,
|
||||||
|
"get_initiator_groups requires no parameters");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
w = spdk_jsonrpc_begin_result(request);
|
||||||
|
if (w == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
spdk_json_write_array_begin(w);
|
||||||
|
|
||||||
|
TAILQ_FOREACH(ig, &g_spdk_iscsi.ig_head, tailq) {
|
||||||
|
dump_initiator_group(w, ig);
|
||||||
}
|
}
|
||||||
|
|
||||||
spdk_json_write_array_end(w);
|
spdk_json_write_array_end(w);
|
||||||
@ -336,29 +343,12 @@ invalid:
|
|||||||
SPDK_RPC_REGISTER("delete_initiator_group", spdk_rpc_delete_initiator_group)
|
SPDK_RPC_REGISTER("delete_initiator_group", spdk_rpc_delete_initiator_group)
|
||||||
|
|
||||||
static void
|
static void
|
||||||
spdk_rpc_get_target_nodes(struct spdk_jsonrpc_request *request,
|
dump_target_node(struct spdk_json_write_ctx *w, struct spdk_iscsi_tgt_node *tgtnode)
|
||||||
const struct spdk_json_val *params)
|
|
||||||
{
|
{
|
||||||
struct spdk_json_write_ctx *w;
|
|
||||||
struct spdk_iscsi_tgt_node *tgtnode;
|
|
||||||
struct spdk_iscsi_pg_map *pg_map;
|
struct spdk_iscsi_pg_map *pg_map;
|
||||||
struct spdk_iscsi_ig_map *ig_map;
|
struct spdk_iscsi_ig_map *ig_map;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
if (params != NULL) {
|
|
||||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS,
|
|
||||||
"get_target_nodes requires no parameters");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
w = spdk_jsonrpc_begin_result(request);
|
|
||||||
if (w == NULL) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
spdk_json_write_array_begin(w);
|
|
||||||
|
|
||||||
TAILQ_FOREACH(tgtnode, &g_spdk_iscsi.target_head, tailq) {
|
|
||||||
spdk_json_write_object_begin(w);
|
spdk_json_write_object_begin(w);
|
||||||
|
|
||||||
spdk_json_write_name(w, "name");
|
spdk_json_write_name(w, "name");
|
||||||
@ -425,7 +415,32 @@ spdk_rpc_get_target_nodes(struct spdk_jsonrpc_request *request,
|
|||||||
spdk_json_write_int32(w, tgtnode->data_digest);
|
spdk_json_write_int32(w, tgtnode->data_digest);
|
||||||
|
|
||||||
spdk_json_write_object_end(w);
|
spdk_json_write_object_end(w);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
spdk_rpc_get_target_nodes(struct spdk_jsonrpc_request *request,
|
||||||
|
const struct spdk_json_val *params)
|
||||||
|
{
|
||||||
|
struct spdk_json_write_ctx *w;
|
||||||
|
struct spdk_iscsi_tgt_node *tgtnode;
|
||||||
|
|
||||||
|
if (params != NULL) {
|
||||||
|
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS,
|
||||||
|
"get_target_nodes requires no parameters");
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
w = spdk_jsonrpc_begin_result(request);
|
||||||
|
if (w == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
spdk_json_write_array_begin(w);
|
||||||
|
|
||||||
|
TAILQ_FOREACH(tgtnode, &g_spdk_iscsi.target_head, tailq) {
|
||||||
|
dump_target_node(w, tgtnode);
|
||||||
|
}
|
||||||
|
|
||||||
spdk_json_write_array_end(w);
|
spdk_json_write_array_end(w);
|
||||||
|
|
||||||
spdk_jsonrpc_end_result(request, w);
|
spdk_jsonrpc_end_result(request, w);
|
||||||
@ -786,27 +801,10 @@ invalid:
|
|||||||
SPDK_RPC_REGISTER("delete_target_node", spdk_rpc_delete_target_node)
|
SPDK_RPC_REGISTER("delete_target_node", spdk_rpc_delete_target_node)
|
||||||
|
|
||||||
static void
|
static void
|
||||||
spdk_rpc_get_portal_groups(struct spdk_jsonrpc_request *request,
|
dump_portal_group(struct spdk_json_write_ctx *w, struct spdk_iscsi_portal_grp *pg)
|
||||||
const struct spdk_json_val *params)
|
|
||||||
{
|
{
|
||||||
struct spdk_json_write_ctx *w;
|
|
||||||
struct spdk_iscsi_portal_grp *pg;
|
|
||||||
struct spdk_iscsi_portal *portal;
|
struct spdk_iscsi_portal *portal;
|
||||||
|
|
||||||
if (params != NULL) {
|
|
||||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS,
|
|
||||||
"get_portal_groups requires no parameters");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
w = spdk_jsonrpc_begin_result(request);
|
|
||||||
if (w == NULL) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
spdk_json_write_array_begin(w);
|
|
||||||
|
|
||||||
TAILQ_FOREACH(pg, &g_spdk_iscsi.pg_head, tailq) {
|
|
||||||
spdk_json_write_object_begin(w);
|
spdk_json_write_object_begin(w);
|
||||||
|
|
||||||
spdk_json_write_name(w, "portals");
|
spdk_json_write_name(w, "portals");
|
||||||
@ -827,6 +825,30 @@ spdk_rpc_get_portal_groups(struct spdk_jsonrpc_request *request,
|
|||||||
spdk_json_write_int32(w, pg->tag);
|
spdk_json_write_int32(w, pg->tag);
|
||||||
|
|
||||||
spdk_json_write_object_end(w);
|
spdk_json_write_object_end(w);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
spdk_rpc_get_portal_groups(struct spdk_jsonrpc_request *request,
|
||||||
|
const struct spdk_json_val *params)
|
||||||
|
{
|
||||||
|
struct spdk_json_write_ctx *w;
|
||||||
|
struct spdk_iscsi_portal_grp *pg;
|
||||||
|
|
||||||
|
if (params != NULL) {
|
||||||
|
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS,
|
||||||
|
"get_portal_groups requires no parameters");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
w = spdk_jsonrpc_begin_result(request);
|
||||||
|
if (w == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
spdk_json_write_array_begin(w);
|
||||||
|
|
||||||
|
TAILQ_FOREACH(pg, &g_spdk_iscsi.pg_head, tailq) {
|
||||||
|
dump_portal_group(w, pg);
|
||||||
}
|
}
|
||||||
|
|
||||||
spdk_json_write_array_end(w);
|
spdk_json_write_array_end(w);
|
||||||
|
Loading…
Reference in New Issue
Block a user