From 06c0ff62ca1271a81dbe5dc036006363a72395b1 Mon Sep 17 00:00:00 2001 From: stivn <9699603+stivn@user.noreply.gitee.com> Date: Fri, 31 Dec 2021 08:56:32 +0000 Subject: [PATCH 1/5] update aw/cxx/distributed/distributed_major.cpp. Signed-off-by: stivn --- aw/cxx/distributed/distributed_major.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aw/cxx/distributed/distributed_major.cpp b/aw/cxx/distributed/distributed_major.cpp index 87a243e..6bd6c59 100644 --- a/aw/cxx/distributed/distributed_major.cpp +++ b/aw/cxx/distributed/distributed_major.cpp @@ -251,7 +251,7 @@ bool DistributeTestEnvironment::RunTestCmd(size_t devNo, const std::string &strC bool breturn = false; size_t lenptr = 0; errno_t ret = EOK; - (void)memset_s(szbuf, MAX_BUFF_LEN, 0, MAX_BUFF_LEN); + (void)memset_s(szbuf, sizeof(szbuf), 0, MAX_BUFF_LEN); // add 2 '\0' size_t rlen = cmdLen + expectValueLen + DST_COMMAND_HEAD_LEN + sizeof(int)*HALF_BUF_LEN + HALF_BUF_LEN; -- Gitee From f835c8ceacb4ac93d7763de1615b2caf5a460343 Mon Sep 17 00:00:00 2001 From: stivn <9699603+stivn@user.noreply.gitee.com> Date: Fri, 31 Dec 2021 09:02:16 +0000 Subject: [PATCH 2/5] update examples/calculator/src/calculator.cpp. Signed-off-by: stivn --- examples/calculator/src/calculator.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/examples/calculator/src/calculator.cpp b/examples/calculator/src/calculator.cpp index 9b504d6..d444760 100644 --- a/examples/calculator/src/calculator.cpp +++ b/examples/calculator/src/calculator.cpp @@ -33,7 +33,10 @@ int Sub(int e1, int e2) int Mul(int e1, int e2) { int result = e1 * e2; - if (!e1 || (result / e1) != e2) { + if (e1 == 0) { + return -1; + } + if ((result / e1) != e2) { result = -1; } return result; -- Gitee From 32d6d6aa79e38ac86691dbcc84ea34c0779fc63a Mon Sep 17 00:00:00 2001 From: stivn <9699603+stivn@user.noreply.gitee.com> Date: Fri, 31 Dec 2021 09:09:05 +0000 Subject: [PATCH 3/5] update examples/distributedb/test/distributedtest/common/distribute_demo_agent.cpp. Signed-off-by: stivn --- .../distributedtest/common/distribute_demo_agent.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/examples/distributedb/test/distributedtest/common/distribute_demo_agent.cpp b/examples/distributedb/test/distributedtest/common/distribute_demo_agent.cpp index 95dab2b..b58239e 100644 --- a/examples/distributedb/test/distributedtest/common/distribute_demo_agent.cpp +++ b/examples/distributedb/test/distributedtest/common/distribute_demo_agent.cpp @@ -186,8 +186,16 @@ int DistributeDemoAgent::AddTwoValue(const std::string &strArgs, int argsLen, co int val1 = 0; int val2 = 0; int val3 = 0; - sscanf_s(strArgs.c_str(), "%d %d", &val1, &val2); - sscanf_s(strExpectValue.c_str(), "%d", &val3); + ret1 = sscanf_s(strArgs.c_str(), "%d %d", &val1, &val2); + if (ret1 == -1) { + HiLog::Error(LABEL, "sccanf_s failed. ret1 == -1."); + return 0; + } + ret2 = sscanf_s(strExpectValue.c_str(), "%d", &val3); + if (ret2 == -1) { + HiLog::Error(LABEL, "sccanf_s failed. ret2 == -1."); + return 0; + } EXPECT_TRUE(val3 == (val1 + val2)); return val1 + val2; } -- Gitee From 6fd15864c7ff6a0e1f181b503e4672bd25967521 Mon Sep 17 00:00:00 2001 From: stivn <9699603+stivn@user.noreply.gitee.com> Date: Fri, 31 Dec 2021 10:06:55 +0000 Subject: [PATCH 4/5] update aw/cxx/distributed/distributed_agent.cpp. Signed-off-by: stivn --- aw/cxx/distributed/distributed_agent.cpp | 29 ++++++++++++++++++------ 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/aw/cxx/distributed/distributed_agent.cpp b/aw/cxx/distributed/distributed_agent.cpp index a8d5a5e..77be4b5 100644 --- a/aw/cxx/distributed/distributed_agent.cpp +++ b/aw/cxx/distributed/distributed_agent.cpp @@ -147,7 +147,10 @@ int DistributedAgent::DoCmdServer(int serverSockFd) HiLog::Info(DistributedAgent::LABEL, "accept testcase runner IP:%s port:%d \n", inet_ntoa(clientAddr.sin_addr), clientAddr.sin_port); while (mbStop_ != true) { - memset_s(buff, MAX_BUFF_LEN, 0, MAX_BUFF_LEN); + ret = memset_s(buff, sizeof(buff), 0, MAX_BUFF_LEN); + if (ret != EOK) { + return -1; + } // every cmd length less than MAX_BUFF_LEN bytes; int cmdLen = recv(clientSockFd_, buff, DST_COMMAND_HEAD_LEN, 0); if (static_cast(cmdLen) < DST_COMMAND_HEAD_LEN) { @@ -190,7 +193,10 @@ int DistributedAgent::DoCmdServer(int serverSockFd) } pszEValue[eValueLen] = '\0'; int nresult = OnProcessCmd(pAlignmentCmd, cmdLen, pszEValue, eValueLen); - (void)memset_s(returnValue, MAX_BUFF_LEN, 0, MAX_BUFF_LEN); + ret = memset_s(returnValue, sizeof(returnValue), 0, MAX_BUFF_LEN); + if (ret != EOK) { + return -1; + } auto pclinereturn = reinterpret_cast(returnValue); pclinereturn->no = pcline->no; pclinereturn->cmdTestType = htons(DST_COMMAND_CALL); @@ -206,7 +212,10 @@ int DistributedAgent::DoCmdServer(int serverSockFd) } case DST_COMMAND_MSG: { int nresult = 0; - (void)memset_s(returnValue, MAX_BUFF_LEN, 0, MAX_BUFF_LEN); + ret = memset_s(returnValue, sizeof(returnValue), 0, MAX_BUFF_LEN); + if (ret != EOK) { + return -1; + } auto pclinereturn = reinterpret_cast(returnValue); pclinereturn->no = pcline->no; pclinereturn->cmdTestType = htons(DST_COMMAND_MSG); @@ -246,7 +255,10 @@ void DistributedAgent::OnNotifyImf(DistributedMsg *pcline) char alignmentCmd[DistributedAgent::CMD_LENGTH]; char szMsg[MAX_BUFF_LEN / DistributedAgent::HALF_NUM - DistributedAgent::CMD_LENGTH]; int cmdNo = 0; - (void)memset_s(alignmentCmd, DistributedAgent::CMD_LENGTH, 0, DistributedAgent::CMD_LENGTH); + ret = memset_s(alignmentCmd, sizeof(alignmentCmd), 0, DistributedAgent::CMD_LENGTH); + if (ret != EOK) { + return; + } (void)memset_s(szMsg, MAX_BUFF_LEN / DistributedAgent::HALF_NUM - DistributedAgent::CMD_LENGTH, 0, MAX_BUFF_LEN / DistributedAgent::HALF_NUM - DistributedAgent::CMD_LENGTH); @@ -259,7 +271,7 @@ void DistributedAgent::OnNotifyImf(DistributedMsg *pcline) HiLog::Error(DistributedAgent::LABEL, "error command.\n"); } else { errno_t ret = EOK; - ret = memcpy_s(alignmentCmd, DistributedAgent::CMD_LENGTH, pcline->alignmentCmd, cmdNo); + ret = memcpy_s(alignmentCmd, sizeof(alignmentCmd), pcline->alignmentCmd, cmdNo); if (ret != EOK) { return; } @@ -311,7 +323,10 @@ int DistributedAgent::OnProcessCmd(const std::string &strCommand, int cmdLen, char szArgs[MAX_BUFF_LEN / DistributedAgent::HALF_NUM - DistributedAgent::CMD_LENGTH]; int cmdNo = 0; - (void)memset_s(alignmentCmd, DistributedAgent::CMD_LENGTH, 0, DistributedAgent::CMD_LENGTH); + ret = memset_s(alignmentCmd, sizeof(alignmentCmd), 0, DistributedAgent::CMD_LENGTH); + if (ret != EOK) { + return -1; + } (void)memset_s(szArgs, MAX_BUFF_LEN / DistributedAgent::HALF_NUM - DistributedAgent::CMD_LENGTH, 0, MAX_BUFF_LEN / DistributedAgent::HALF_NUM - DistributedAgent::CMD_LENGTH); @@ -327,7 +342,7 @@ int DistributedAgent::OnProcessCmd(const std::string &strCommand, int cmdLen, } errno_t ret = EOK; - ret = memcpy_s(alignmentCmd, DistributedAgent::CMD_LENGTH, strCommand.c_str(), cmdNo); + ret = memcpy_s(alignmentCmd, sizeof(alignmentCmd), strCommand.c_str(), cmdNo); if (ret != EOK) { return -1; } -- Gitee From aafd66b1808c25d3e9a49dca4f6ef438c9e9dcf6 Mon Sep 17 00:00:00 2001 From: stivn <9699603+stivn@user.noreply.gitee.com> Date: Fri, 31 Dec 2021 10:08:22 +0000 Subject: [PATCH 5/5] update aw/cxx/distributed/distributed_major.cpp. Signed-off-by: stivn --- aw/cxx/distributed/distributed_major.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/aw/cxx/distributed/distributed_major.cpp b/aw/cxx/distributed/distributed_major.cpp index 6bd6c59..5747861 100644 --- a/aw/cxx/distributed/distributed_major.cpp +++ b/aw/cxx/distributed/distributed_major.cpp @@ -251,8 +251,10 @@ bool DistributeTestEnvironment::RunTestCmd(size_t devNo, const std::string &strC bool breturn = false; size_t lenptr = 0; errno_t ret = EOK; - (void)memset_s(szbuf, sizeof(szbuf), 0, MAX_BUFF_LEN); - + ret = memset_s(szbuf, sizeof(szbuf), 0, MAX_BUFF_LEN); + if (ret != EOK) { + return breturn; + } // add 2 '\0' size_t rlen = cmdLen + expectValueLen + DST_COMMAND_HEAD_LEN + sizeof(int)*HALF_BUF_LEN + HALF_BUF_LEN; if (rlen <= MAX_BUFF_LEN) { -- Gitee