diff --git a/aw/cxx/distributed/distributed_agent.cpp b/aw/cxx/distributed/distributed_agent.cpp index a8d5a5e38f80ddc568018331e582a06a1e651fd4..77be4b57c84c9ae328d165dcea39f7b0359e0623 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; }