From 1ed7bd14303fca5c3dd36a30a88d4d2d053f4334 Mon Sep 17 00:00:00 2001 From: Prasanna Kumar Kalever Date: Mon, 10 Apr 2017 12:32:47 +0530 Subject: modify: add support for one way authentication This patch introduce or rather implement modify command for enabling authentication for block devices. The schematics of authentication setting, looks like $ gluster-block modify block-test/sample-block auth enable --json-pretty { "SUCCESSFUL ON":[ "192.168.0.105" ], "IQN":"iqn.2016-12.org.gluster-block:8917def2-e90d-4406-8c9c-6d06b6851bbe", "USERNAME":"8917def2-e90d-4406-8c9c-6d06b6851bbe", "PASSWORD":"a3e75362-a446-45af-98d0-a1ed7e10d7f0", "RESULT":"SUCCESS" } As an effect it brings changes in 'info' command response, note PASSWORD $ gluster-block info block-test/sample-block --json-pretty { "NAME":"sample-block", "VOLUME":"block-test", "GBID":"8917def2-e90d-4406-8c9c-6d06b6851bbe", "SIZE":1073741824, "HA":1, "PASSWORD":"a3e75362-a446-45af-98d0-a1ed7e10d7f0", "BLOCK CONFIG NODE(S)":[ "192.168.0.105" ] } The schematics of auth disabling, looks like $ gluster-block modify block-test/sample-block auth disable --json-pretty { "SUCCESSFUL ON":[ "192.168.0.105" ], "IQN":"iqn.2016-12.org.gluster-block:add99c38-3c14-42d7-bf23-7d02f388e1e7", "RESULT":"SUCCESS" } Change-Id: I06d095b50401c131ac89cc142497f21d2205164a Fixes: #5 Signed-off-by: Prasanna Kumar Kalever --- rpc/rpcl/block.x | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'rpc/rpcl') diff --git a/rpc/rpcl/block.x b/rpc/rpcl/block.x index 5d9c2a5..df29542 100644 --- a/rpc/rpcl/block.x +++ b/rpc/rpcl/block.x @@ -22,6 +22,14 @@ struct blockCreate { char block_name[255]; }; +struct blockModify { + char volume[255]; + char block_name[255]; + char gbid[127]; + char passwd[127]; + bool auth_mode; +}; + struct blockCreateCli { char volume[255]; u_quad_t size; @@ -54,6 +62,13 @@ struct blockListCli { enum JsonResponseFormat json_resp; }; +struct blockModifyCli { + char block_name[255]; + char volume[255]; + bool auth_mode; + enum JsonResponseFormat json_resp; +}; + struct blockResponse { int exit; /* exit code of the command */ string out<>; /* output; TODO: return respective objects */ @@ -65,6 +80,7 @@ program GLUSTER_BLOCK { version GLUSTER_BLOCK_VERS { blockResponse BLOCK_CREATE(blockCreate) = 1; blockResponse BLOCK_DELETE(blockDelete) = 2; + blockResponse BLOCK_MODIFY(blockModify) = 3; } = 1; } = 21215311; /* B2 L12 O15 C3 K11 */ @@ -74,5 +90,6 @@ program GLUSTER_BLOCK_CLI { blockResponse BLOCK_LIST_CLI(blockListCli) = 2; blockResponse BLOCK_INFO_CLI(blockInfoCli) = 3; blockResponse BLOCK_DELETE_CLI(blockDeleteCli) = 4; + blockResponse BLOCK_MODIFY_CLI(blockModifyCli) = 5; } = 1; } = 212153113; /* B2 L12 O15 C3 K11 C3 */ -- cgit