[spp] [PATCH 03/11] shared/sec: refactor passing err in cmd_runner

ogawa.yasufumi at lab.ntt.co.jp ogawa.yasufumi at lab.ntt.co.jp
Fri May 31 05:35:57 CEST 2019


From: Yasufumi Ogawa <ogawa.yasufumi at lab.ntt.co.jp>

The names of struct and function for passing error info in cmd_runner
are redundant. This update is to revise the names and its comments for
refactoring.

Signed-off-by: Yasufumi Ogawa <ogawa.yasufumi at lab.ntt.co.jp>
---
 .../secondary/spp_worker_th/cmd_runner.c      | 59 ++++++++++---------
 1 file changed, 32 insertions(+), 27 deletions(-)

diff --git a/src/shared/secondary/spp_worker_th/cmd_runner.c b/src/shared/secondary/spp_worker_th/cmd_runner.c
index 1908c8c..4874adc 100644
--- a/src/shared/secondary/spp_worker_th/cmd_runner.c
+++ b/src/shared/secondary/spp_worker_th/cmd_runner.c
@@ -44,10 +44,10 @@ enum cmd_res_codes {
 };
 
 /* command execution result information */
-struct command_result {
+struct cmd_result {
 	int code;  /* Response code. */
 	char result[SPPWK_NAME_BUFSZ];  /* Response msg in short. */
-	char error_message[CMD_ERR_MSG_LEN];  /* Detailed response msg. */
+	char err_msg[CMD_ERR_MSG_LEN];  /* Used only if cmd is failed. */
 };
 
 /* command response list control structure */
@@ -835,32 +835,37 @@ get_parse_err_msg(
 	return message;
 }
 
-/* set the command result */
+/* Setup cmd_result with given code and message. */
 static inline void
-set_command_results(struct command_result *result,
+set_cmd_result(struct cmd_result *cmd_res,
 		int code, const char *error_messege)
 {
-	result->code = code;
+	cmd_res->code = code;
+	/**
+	 * TODO(yasufum) confirm these string "success", "error" or "invalid"
+	 * should be fixed or not because this no meaning short message is
+	 * obvious from code and nouse actually.
+	 */
 	switch (code) {
 	case CMD_SUCCESS:
-		strcpy(result->result, "success");
-		memset(result->error_message, 0x00, CMD_ERR_MSG_LEN);
+		strcpy(cmd_res->result, "success");
+		memset(cmd_res->err_msg, 0x00, CMD_ERR_MSG_LEN);
 		break;
 	case CMD_FAILED:
-		strcpy(result->result, "error");
-		strcpy(result->error_message, error_messege);
+		strcpy(cmd_res->result, "error");
+		strcpy(cmd_res->err_msg, error_messege);
 		break;
 	case CMD_INVALID:
 	default:
-		strcpy(result->result, "invalid");
-		memset(result->error_message, 0x00, CMD_ERR_MSG_LEN);
+		strcpy(cmd_res->result, "invalid");
+		memset(cmd_res->err_msg, 0x00, CMD_ERR_MSG_LEN);
 		break;
 	}
 }
 
 /* Setup error message of parsing for requested command. */
 static void
-prepare_parse_err_msg(struct command_result *results,
+prepare_parse_err_msg(struct cmd_result *results,
 		const struct sppwk_cmd_req *request,
 		const struct sppwk_parse_err_msg *wk_err_msg)
 {
@@ -870,14 +875,14 @@ prepare_parse_err_msg(struct command_result *results,
 
 	for (i = 0; i < request->num_command; i++) {
 		if (wk_err_msg->code == 0)
-			set_command_results(&results[i], CMD_SUCCESS, "");
+			set_cmd_result(&results[i], CMD_SUCCESS, "");
 		else
-			set_command_results(&results[i], CMD_INVALID, "");
+			set_cmd_result(&results[i], CMD_INVALID, "");
 	}
 
 	if (wk_err_msg->code != 0) {
 		tmp_buff = get_parse_err_msg(wk_err_msg, error_messege);
-		set_command_results(&results[request->num_valid_command],
+		set_cmd_result(&results[request->num_valid_command],
 				CMD_FAILED, tmp_buff);
 	}
 }
@@ -886,7 +891,7 @@ prepare_parse_err_msg(struct command_result *results,
 static int
 append_result_value(const char *name, char **output, void *tmp)
 {
-	const struct command_result *result = tmp;
+	const struct cmd_result *result = tmp;
 	return append_json_str_value(name, output, result->result);
 }
 
@@ -895,10 +900,10 @@ static int
 append_error_details_value(const char *name, char **output, void *tmp)
 {
 	int ret = SPP_RET_NG;
-	const struct command_result *result = tmp;
+	const struct cmd_result *result = tmp;
 	char *tmp_buff;
 	/* string is empty, except for errors */
-	if (result->error_message[0] == '\0')
+	if (result->err_msg[0] == '\0')
 		return SPP_RET_OK;
 
 	tmp_buff = spp_strbuf_allocate(CMD_RES_BUF_INIT_SIZE);
@@ -911,7 +916,7 @@ append_error_details_value(const char *name, char **output, void *tmp)
 	}
 
 	ret = append_json_str_value("message", &tmp_buff,
-			result->error_message);
+			result->err_msg);
 	if (unlikely(ret < 0)) {
 		spp_strbuf_free(tmp_buff);
 		return SPP_RET_NG;
@@ -1417,7 +1422,7 @@ struct command_response_list response_info_list[] = {
 /* append a list of command results for JSON format. */
 static int
 append_command_results_value(const char *name, char **output,
-		int num, struct command_result *results)
+		int num, struct cmd_result *results)
 {
 	int ret = SPP_RET_NG;
 	int i;
@@ -1496,7 +1501,7 @@ append_info_value(const char *name, char **output)
 static void
 send_decode_error_response(int *sock,
 		const struct sppwk_cmd_req *request,
-		struct command_result *command_results)
+		struct cmd_result *command_results)
 {
 	int ret = SPP_RET_NG;
 	char *msg, *tmp_buff;
@@ -1555,7 +1560,7 @@ send_decode_error_response(int *sock,
 static void
 send_command_result_response(int *sock,
 		const struct sppwk_cmd_req *request,
-		struct command_result *command_results)
+		struct cmd_result *command_results)
 {
 	int ret = SPP_RET_NG;
 	char *msg, *tmp_buff;
@@ -1643,7 +1648,7 @@ process_request(int *sock, const char *request_str, size_t request_str_len)
 
 	struct sppwk_cmd_req request;
 	struct sppwk_parse_err_msg wk_err_msg;
-	struct command_result command_results[SPPWK_MAX_CMDS];
+	struct cmd_result command_results[SPPWK_MAX_CMDS];
 
 	memset(&request, 0, sizeof(struct sppwk_cmd_req));
 	memset(&wk_err_msg, 0, sizeof(struct sppwk_parse_err_msg));
@@ -1674,24 +1679,24 @@ process_request(int *sock, const char *request_str, size_t request_str_len)
 	for (i = 0; i < request.num_command ; ++i) {
 		ret = execute_command(request.commands + i);
 		if (unlikely(ret != SPP_RET_OK)) {
-			set_command_results(&command_results[i], CMD_FAILED,
+			set_cmd_result(&command_results[i], CMD_FAILED,
 					"error occur");
 
 			/* not execute remaining commands */
 			for (++i; i < request.num_command ; ++i)
-				set_command_results(&command_results[i],
+				set_cmd_result(&command_results[i],
 					CMD_INVALID, "");
 
 			break;
 		}
 
-		set_command_results(&command_results[i], CMD_SUCCESS, "");
+		set_cmd_result(&command_results[i], CMD_SUCCESS, "");
 	}
 
 	if (request.is_requested_exit) {
 		/* Terminated by process exit command.                       */
 		/* Other route is normal end because it responds to command. */
-		set_command_results(&command_results[0], CMD_SUCCESS, "");
+		set_cmd_result(&command_results[0], CMD_SUCCESS, "");
 		send_command_result_response(sock, &request, command_results);
 		RTE_LOG(INFO, SPP_COMMAND_PROC,
 				"Terminate process for exit.\n");
-- 
2.17.1



More information about the spp mailing list