mirror of
https://github.com/openharmony/tee_tee_os_framework.git
synced 2026-07-20 23:46:14 -04:00
no message
Match-id-5c5e99d9228b0a4bc2637d2a0c6d86eaa1e46339
This commit is contained in:
@@ -38,7 +38,7 @@ static char g_offset200[] = "offset is 200";
|
||||
static char g_offset300[] = "offset is 300";
|
||||
|
||||
|
||||
#define MAILBOXPOOL_MAX_SIZE 1024 * 1024 * 4
|
||||
#define MAILBOXPOOL_MAX_SIZE (1024 * 1024 * 4)
|
||||
|
||||
using namespace std;
|
||||
|
||||
@@ -386,8 +386,7 @@ TEE_TEST(EmptyTest, AllocateSharedMemory_WithFlagOutput_UseParamTypesWhole, Func
|
||||
|
||||
static int CopyToBuffer(char *buffer, uint32_t buffer_size)
|
||||
{
|
||||
int rc;
|
||||
rc = strcpy_s(buffer, buffer_size, g_offset0);
|
||||
int rc = strcpy_s(buffer, buffer_size, g_offset0);
|
||||
EXPECT_EQ(rc, 0);
|
||||
rc = strcpy_s(buffer + OFFSET100, buffer_size - OFFSET100, g_offset100);
|
||||
EXPECT_EQ(rc, 0);
|
||||
|
||||
@@ -45,9 +45,9 @@ static char g_offset100[] = "offset is 100";
|
||||
static char g_offset200[] = "offset is 200";
|
||||
static char g_offset300[] = "offset is 300";
|
||||
|
||||
#define SIZE_4K 4 * 1024
|
||||
#define SIZE_1024K 1024 * 1024
|
||||
#define SIZE_2048K 2048 * 1024
|
||||
#define SIZE_4K (4 * 1024)
|
||||
#define SIZE_1024K (1024 * 1024)
|
||||
#define SIZE_2048K (2048 * 1024)
|
||||
|
||||
/**
|
||||
* @testcase.name : InvokeCommand_WithSessionNotOpen
|
||||
|
||||
@@ -434,15 +434,15 @@ TEEC_Result Invoke_GetInstanceData(TEEC_Session *session, uint32_t commandID, ch
|
||||
static void retrieveUint32toBuffer(uint8_t *buffer, uint32_t i)
|
||||
{
|
||||
buffer[3] = i & 0xff;
|
||||
buffer[2] = i >> 8 & 0xff;
|
||||
buffer[1] = i >> 16 & 0xff;
|
||||
buffer[0] = i >> 24 & 0xff;
|
||||
buffer[2] = (i >> 8) & 0xff;
|
||||
buffer[1] = (i >> 16) & 0xff;
|
||||
buffer[0] = (i >> 24) & 0xff;
|
||||
}
|
||||
|
||||
static void retrieveUint16toBuffer(uint8_t *buffer, uint16_t i)
|
||||
{
|
||||
buffer[1] = i & 0xff;
|
||||
buffer[0] = i >> 8 & 0xff;
|
||||
buffer[0] = (i >> 8) & 0xff;
|
||||
}
|
||||
|
||||
TEEC_Result Invoke_OpenTASession(TEEC_Session *session, uint32_t commandID, uint32_t *ta2taSession, TestData *testData,
|
||||
|
||||
@@ -28,7 +28,7 @@ TEE_TEST(TCF2Test, TEE_Set_And_GetInstanceData_With_Success, Function | MediumTe
|
||||
{
|
||||
TEEC_Result ret;
|
||||
uint32_t origin;
|
||||
char inBuf[] = {'T', 'E', 'E', 'A', '\0',};
|
||||
char inBuf[] = { 'T', 'E', 'E', 'A', '\0', };
|
||||
char outBuf[BIG_SIZE] = { 0 };
|
||||
uint32_t caseId = 0;
|
||||
uint32_t outLen = sizeof(outBuf);
|
||||
@@ -53,7 +53,7 @@ TEE_TEST(TCF2Test, TEE_Set_And_GetInstanceData_With_InstanceDataIsNull, Function
|
||||
{
|
||||
TEEC_Result ret;
|
||||
uint32_t origin;
|
||||
char inBuf[] = {'T', 'E', 'E', 'A', '\0',};
|
||||
char inBuf[] = { 'T', 'E', 'E', 'A', '\0', };
|
||||
char outBuf[BIG_SIZE] = { 0 };
|
||||
uint32_t caseId = INPUT_ISNULL;
|
||||
uint32_t outLen = sizeof(outBuf);
|
||||
@@ -77,7 +77,7 @@ TEE_TEST(TCF2Test, TEE_Set_And_GetInstanceData_With_GetSizeTooShort, Function |
|
||||
{
|
||||
TEEC_Result ret;
|
||||
uint32_t origin;
|
||||
char inBuf[] = {'T', 'E', 'E', 'A', '\0',};
|
||||
char inBuf[] = { 'T', 'E', 'E', 'A', '\0', };
|
||||
char outBuf[BIG_SIZE] = { 0 };
|
||||
uint32_t caseId = 0;
|
||||
uint32_t outLen = strlen(inBuf) - 1;
|
||||
|
||||
@@ -217,4 +217,4 @@ TEE_TEST(TCF1Test, TEE_Malloc_With_MAXDataSize, Function | MediumTest | Level0)
|
||||
EXPECT_EQ(origin, TEEC_ORIGIN_TRUSTED_APP);
|
||||
EXPECT_STREQ(buffer, EXPECTBUFFER_ZERO);
|
||||
free(buffer);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -68,7 +68,7 @@ TEE_TEST(TCF2TA2TATest, TEE_Panic_With_MultiSession, Function | MediumTest | Lev
|
||||
TEEC_Result panicCode = TEEC_ERROR_GENERIC;
|
||||
ret = Invoke_Panic(GetSession2(), CMD_TEE_Panic, panicCode, &origin);
|
||||
ASSERT_EQ(ret, TEEC_ERROR_TARGET_DEAD);
|
||||
// ASSERT_EQ(origin, TEEC_ORIGIN_TEE);
|
||||
ASSERT_EQ(origin, TEEC_ORIGIN_TEE);
|
||||
|
||||
for (i = 0; i <= 6; i++) {
|
||||
ret = Invoke_InvokeTACommand(GetSession(), CMD_TEE_InvokeTACommand, ta2taSession[i], &value, &origin);
|
||||
|
||||
@@ -245,7 +245,7 @@ TEE_TEST(TCF1Test, TEE_GetPropertyAsString_WithoutEnum_GPD_TEE_TRUSTEDOS_IMP_BIN
|
||||
ASSERT_EQ(value.origin, TEEC_ORIGIN_TRUSTED_APP);
|
||||
ASSERT_STREQ(value.outBuffer, TEE_IMP_VERSION);
|
||||
}
|
||||
#if 0
|
||||
|
||||
/**
|
||||
* @testcase.name : TEE_GetPropertyAsString_WithoutEnum_GPD_TEE_FIRMWARE_IMP_VERSION
|
||||
* @testcase.desc : test TA call TEE_GetPropertyAsString to get value of GPD_TEE_FIRMWARE_IMP_VERSION
|
||||
@@ -274,7 +274,8 @@ TEE_TEST(TCF1Test, TEE_GetPropertyAsString_WithoutEnum_GPD_TEE_FIRMWARE_IMP_VERS
|
||||
* @testcase.desc : test TA call TEE_GetPropertyAsString to get value of GPD_TEE_FIRMWARE_IMP_BINARYVERSION
|
||||
* @testcase.expect : return TEEC_SUCCESS, get value is correct
|
||||
*/
|
||||
TEE_TEST(TCF1Test, TEE_GetPropertyAsString_WithoutEnum_GPD_TEE_FIRMWARE_IMP_BINARYVERSION, Function | MediumTest | Level0)
|
||||
TEE_TEST(TCF1Test, TEE_GetPropertyAsString_WithoutEnum_GPD_TEE_FIRMWARE_IMP_BINARYVERSION,
|
||||
Function | MediumTest | Level0)
|
||||
{
|
||||
TEEC_Result ret;
|
||||
int rc;
|
||||
@@ -282,7 +283,8 @@ TEE_TEST(TCF1Test, TEE_GetPropertyAsString_WithoutEnum_GPD_TEE_FIRMWARE_IMP_BINA
|
||||
TestData value = { 0 };
|
||||
value.cmd = CMD_TEE_GetPropertyAsString;
|
||||
value.propSet = TEE_PROPSET_IMPLEMENTATION;
|
||||
rc = memcpy_s(value.inBuffer, BIG_SIZE, GPD_TEE_FIRMWARE_IMP_BINARYVERSION, sizeof(GPD_TEE_FIRMWARE_IMP_BINARYVERSION));
|
||||
rc = memcpy_s(value.inBuffer, BIG_SIZE, GPD_TEE_FIRMWARE_IMP_BINARYVERSION,
|
||||
sizeof(GPD_TEE_FIRMWARE_IMP_BINARYVERSION));
|
||||
ASSERT_EQ(rc, 0);
|
||||
value.inBufferLen = sizeof(GPD_TEE_FIRMWARE_IMP_BINARYVERSION);
|
||||
|
||||
@@ -291,7 +293,7 @@ TEE_TEST(TCF1Test, TEE_GetPropertyAsString_WithoutEnum_GPD_TEE_FIRMWARE_IMP_BINA
|
||||
ASSERT_EQ(value.origin, TEEC_ORIGIN_TRUSTED_APP);
|
||||
ASSERT_STREQ(value.outBuffer, TEE_FIRMWARE_IMP_VERSION);
|
||||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @testcase.name : TEE_GetPropertyAsString_WithoutEnum_GPD_TEE_TRUSTEDOS_MANUFACTURER
|
||||
* @testcase.desc : test TA call TEE_GetPropertyAsString to get value of GPD_TEE_TRUSTEDOS_MANUFACTURER
|
||||
|
||||
@@ -34,7 +34,7 @@ struct intMapping {
|
||||
uint64_t expectResult;
|
||||
};
|
||||
|
||||
struct unIntMapping unIntMap[] = {
|
||||
struct unIntMapping g_unIntMap[] = {
|
||||
// bool
|
||||
{ (char*)GPD_TA_INSTANCEKEEPALIVE, CMD_TEE_GetPropertyAsBool, TEE_PROPSET_CURRENT_TA,
|
||||
(char*)VALUE_PREDEFINED_FALSE, sizeof(VALUE_PREDEFINED_FALSE) },
|
||||
@@ -94,7 +94,7 @@ struct unIntMapping unIntMap[] = {
|
||||
TEE_PROPSET_IMPLEMENTATION, (char*)TEE_FIRMWARE_MANUFACTURER, BIG_SIZE },
|
||||
};
|
||||
|
||||
struct intMapping intMap[] = {
|
||||
struct intMapping g_intMap[] = {
|
||||
// int32
|
||||
{ (char*)GPD_TA_DATASIZE, CMD_TEE_GetPropertyAsU32,
|
||||
TEE_PROPSET_CURRENT_TA, VALUE_PREDEFINED_DATASIZE },
|
||||
@@ -119,7 +119,7 @@ struct intMapping intMap[] = {
|
||||
{ (char*)GPD_TEE_EVENT_MAXSOURCES, CMD_TEE_GetPropertyAsU32,
|
||||
TEE_PROPSET_IMPLEMENTATION, 0 },
|
||||
{ (char*)GPD_TEE_API_LEVEL, CMD_TEE_GetPropertyAsU32,
|
||||
TEE_PROPSET_IMPLEMENTATION, TEE_MAX_API_LEVEL_CONFIG },
|
||||
TEE_PROPSET_IMPLEMENTATION, TEE_MAX_API_LEVEL_CONFIG },
|
||||
// int64
|
||||
{ (char*)SMC_TA_TESTU64, CMD_TEE_GetPropertyAsU64,
|
||||
TEE_PROPSET_CURRENT_TA, VALUE_PREDEFINED_U64 },
|
||||
@@ -130,21 +130,21 @@ TEEC_Result GetPropertyFromUnIntMap(TEEC_Context *context, TEEC_Session *session
|
||||
TEEC_Result result;
|
||||
int i;
|
||||
|
||||
for (i = 0; i < (sizeof(unIntMap) / sizeof(unIntMap[0])); i++) {
|
||||
if (strncmp(val->inBuffer, unIntMap[i].name, val->inBufferLen) == 0) {
|
||||
for (i = 0; i < (sizeof(g_unIntMap) / sizeof(g_unIntMap[0])); i++) {
|
||||
if (strncmp(val->inBuffer, g_unIntMap[i].name, val->inBufferLen) == 0) {
|
||||
*flag = 1;
|
||||
val->cmd = unIntMap[i].cmd;
|
||||
val->cmd = g_unIntMap[i].cmd;
|
||||
result = Invoke_GetPropertyAsX(context, session, val);
|
||||
if (result != TEEC_SUCCESS || val->origin != TEEC_ORIGIN_TRUSTED_APP) {
|
||||
TEST_PRINT_ERROR("getProperty from Enumerator with %s is fail! result = 0x%x\n", val->inBuffer, result);
|
||||
return result;
|
||||
}
|
||||
if (val->cmd != CMD_TEE_GetPropertyAsUUID) {
|
||||
if (val->outBufferLen != unIntMap[i].expectLen ||
|
||||
(strncmp(val->outBuffer, unIntMap[i].expectResult, unIntMap[i].expectLen) != 0)) {
|
||||
if (val->outBufferLen != g_unIntMap[i].expectLen ||
|
||||
(strncmp(val->outBuffer, g_unIntMap[i].expectResult, g_unIntMap[i].expectLen) != 0)) {
|
||||
TEST_PRINT_ERROR("getProperty from Enumerator with %s is fail! outlen=0x%x, expect outlen=0x%x\n",
|
||||
val->inBuffer, val->outBufferLen, unIntMap[i].expectLen);
|
||||
TEST_PRINT_ERROR("outbuffer=%s, expect outbuffer=%s\n", val->outBuffer, unIntMap[i].expectResult);
|
||||
val->inBuffer, val->outBufferLen, g_unIntMap[i].expectLen);
|
||||
TEST_PRINT_ERROR("outbuffer=%s, expect outbuffer=%s\n", val->outBuffer, g_unIntMap[i].expectResult);
|
||||
return TEEC_ERROR_GENERIC;
|
||||
}
|
||||
}
|
||||
@@ -159,25 +159,25 @@ TEEC_Result GetPropertyFromIntMap(TEEC_Context *context, TEEC_Session *session,
|
||||
TEEC_Result result;
|
||||
int i;
|
||||
|
||||
for (i = 0; i < (sizeof(intMap) / sizeof(intMap[0])); i++) {
|
||||
if (strncmp(val->inBuffer, intMap[i].name, val->inBufferLen) == 0) {
|
||||
for (i = 0; i < (sizeof(g_intMap) / sizeof(g_intMap[0])); i++) {
|
||||
if (strncmp(val->inBuffer, g_intMap[i].name, val->inBufferLen) == 0) {
|
||||
*flag = 1;
|
||||
val->cmd = intMap[i].cmd;
|
||||
val->cmd = g_intMap[i].cmd;
|
||||
result = Invoke_GetPropertyAsX(context, session, val);
|
||||
if (result != TEEC_SUCCESS || val->origin != TEEC_ORIGIN_TRUSTED_APP) {
|
||||
TEST_PRINT_ERROR("getProperty from Enumerator with %s is fail! result = 0x%x\n", val->inBuffer, result);
|
||||
return result;
|
||||
}
|
||||
if (val->cmd == CMD_TEE_GetPropertyAsU32) {
|
||||
if (atoi(val->outBuffer) != (uint32_t)intMap[i].expectResult) {
|
||||
if (atoi(val->outBuffer) != (uint32_t)g_intMap[i].expectResult) {
|
||||
TEST_PRINT_ERROR("getProperty from Enumerator with %s is fail! out=0x%x, expect out=0x%x\n",
|
||||
val->inBuffer, atoi(val->outBuffer), (uint32_t)intMap[i].expectResult);
|
||||
val->inBuffer, atoi(val->outBuffer), (uint32_t)g_intMap[i].expectResult);
|
||||
return TEEC_ERROR_GENERIC;
|
||||
}
|
||||
} else {
|
||||
if (atoll(val->outBuffer) != intMap[i].expectResult) {
|
||||
if (atoll(val->outBuffer) != g_intMap[i].expectResult) {
|
||||
TEST_PRINT_ERROR("getProperty from Enumerator with %s is fail! out=0x%llx, expect out=0x%lu\n",
|
||||
val->inBuffer, atoll(val->outBuffer), intMap[i].expectResult);
|
||||
val->inBuffer, atoll(val->outBuffer), g_intMap[i].expectResult);
|
||||
return TEEC_ERROR_GENERIC;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -72,9 +72,9 @@ static int32_t copy_from_client_test(struct share_buffer_arg *input_arg, char *t
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (copy_from_client_exception_test(input_arg, temp_buffer) != 0)
|
||||
if (copy_from_client_exception_test(input_arg, temp_buffer) != 0) {
|
||||
return -1;
|
||||
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -114,9 +114,9 @@ static int32_t copy_to_client_test(struct share_buffer_arg *input_arg, char *tem
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (copy_to_client_exception_test(input_arg, temp_buffer) != 0)
|
||||
if (copy_to_client_exception_test(input_arg, temp_buffer) != 0) {
|
||||
return -1;
|
||||
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -208,9 +208,9 @@ int64_t open_test(struct drv_data *drv, unsigned long args, uint32_t args_len)
|
||||
}
|
||||
|
||||
uint32_t *buf = buf_init(*input);
|
||||
if (buf == NULL)
|
||||
if (buf == NULL) {
|
||||
return -1;
|
||||
|
||||
}
|
||||
drv->private_data = buf;
|
||||
driver_log("driver open test begin: fd=%d args=0x%x", drv->fd, *input);
|
||||
|
||||
|
||||
@@ -178,17 +178,16 @@ static TEE_Result CmdTEERealloc(uint32_t nParamTypes, TEE_Param pParams[4])
|
||||
|
||||
(void)memset_s(pBufferMalloc, nOldSize, 0x41, nOldSize); // 'A' is 0x41
|
||||
|
||||
if (caseId == BUFFER_IS_FREE)
|
||||
if (caseId == BUFFER_IS_FREE) {
|
||||
TEE_Free((void *)pBufferMalloc); // free the allocated buffer
|
||||
|
||||
if (caseId == INPUT_ISNULL)
|
||||
}
|
||||
if (caseId == INPUT_ISNULL) {
|
||||
pBufferRealloc = (char *)TEE_Realloc(NULL, nNewSize);
|
||||
else if (caseId == BUFFER_ISNOT_MALLOC)
|
||||
} else if (caseId == BUFFER_ISNOT_MALLOC) {
|
||||
pBufferRealloc = (char *)TEE_Realloc(buf, nNewSize);
|
||||
else
|
||||
} else {
|
||||
pBufferRealloc = (char *)TEE_Realloc((void *)pBufferMalloc, nNewSize);
|
||||
|
||||
|
||||
}
|
||||
if ((pBufferRealloc == NULL) && (pBufferMalloc == NULL)) {
|
||||
return TEE_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
@@ -318,15 +317,16 @@ static TEE_Result CmdTEEMemFill(uint32_t nParamTypes, TEE_Param pParams[4])
|
||||
caseId = pParams[0].value.b;
|
||||
|
||||
pBuffer = (char *)TEE_Malloc(nMemoryFillSize, 0); // buffer is filled with 0
|
||||
if (pBuffer == NULL)
|
||||
if (pBuffer == NULL) {
|
||||
return TEE_ERROR_OUT_OF_MEMORY;
|
||||
if (caseId == INPUT_ISNULL)
|
||||
}
|
||||
if (caseId == INPUT_ISNULL) {
|
||||
TEE_MemFill(NULL, nCharFill, nMemoryFillSize);
|
||||
else if (caseId == OUTPUTBUFFERSIZE_ISZERO)
|
||||
} else if (caseId == OUTPUTBUFFERSIZE_ISZERO) {
|
||||
TEE_MemFill(pBuffer, nCharFill, 0);
|
||||
else
|
||||
} else {
|
||||
TEE_MemFill(pBuffer, nCharFill, nMemoryFillSize);
|
||||
|
||||
}
|
||||
TEE_MemMove(pParams[1].memref.buffer, pBuffer, nMemoryFillSize);
|
||||
TEE_Free((void *)pBuffer);
|
||||
return TEE_SUCCESS;
|
||||
@@ -380,12 +380,12 @@ static TEE_Result CmdTEECheckMemoryAccessRights(uint32_t nParamTypes, TEE_Param
|
||||
caseId = pParams[2].value.a;
|
||||
|
||||
pBuffer = (char *)TEE_Malloc(nSize, 0);
|
||||
if (pBuffer == NULL)
|
||||
if (pBuffer == NULL) {
|
||||
return TEE_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
if (caseId == BUFFER_IS_FREE)
|
||||
}
|
||||
if (caseId == BUFFER_IS_FREE) {
|
||||
TEE_Free((void *)pBuffer); // free the allocated buffer
|
||||
|
||||
}
|
||||
if (caseId == INPUT_ISNULL)
|
||||
ret = TEE_CheckMemoryAccessRights(accessFlags, NULL, nSize);
|
||||
else if (caseId == BUFFER_ISNOT_MALLOC)
|
||||
@@ -403,9 +403,9 @@ static TEE_Result CmdTEECheckMemoryAccessRights(uint32_t nParamTypes, TEE_Param
|
||||
else
|
||||
ret = TEE_CheckMemoryAccessRights(accessFlags, pBuffer, nSize);
|
||||
|
||||
if (caseId != BUFFER_IS_FREE)
|
||||
if (caseId != BUFFER_IS_FREE) {
|
||||
TEE_Free((void *)pBuffer);
|
||||
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -430,11 +430,11 @@ static TEE_Result CmdTEESetInstanceData(uint32_t nParamTypes, TEE_Param pParams[
|
||||
// recopies the input string into the instance data
|
||||
TEE_MemMove((void *)pDataBuffer, (void *)pParams[1].memref.buffer, nStringSize);
|
||||
|
||||
if (caseId == INPUT_ISNULL)
|
||||
if (caseId == INPUT_ISNULL) {
|
||||
TEE_SetInstanceData(NULL);
|
||||
else
|
||||
} else {
|
||||
TEE_SetInstanceData((void *)pDataBuffer); // calls the SetInstanceData function to store the string address
|
||||
|
||||
}
|
||||
return TEE_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
#define PROPERTY_NAME_MAX_SIZE 100
|
||||
#define PROPERTY_OUTPUT_STRING_MAX_SIZE 200
|
||||
#define DEFAULT_BUFFER_SIZE 1024
|
||||
#define DEFAULT_REALLOC_SIZE 10000
|
||||
#define PROPERTY_OUTPUT_BINARY_BLOCK_MAX_SIZE 200
|
||||
#define MAXLEN_U32 11
|
||||
#define MAXLEN_U64 21
|
||||
@@ -589,23 +590,23 @@ static TEE_Result CmdTEERealloc(uint32_t nParamTypes, TEE_Param pParams[4])
|
||||
uint32_t caseId = pParams[3].value.a;
|
||||
|
||||
pBufferMalloc = (char *)TEE_Malloc(nOldSize, 0);
|
||||
if (pBufferMalloc == NULL)
|
||||
if (pBufferMalloc == NULL) {
|
||||
return TEE_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
}
|
||||
(void)memset_s(pBufferMalloc, nOldSize, 0x41, nOldSize); // 'A' is 0x41
|
||||
|
||||
pBufferRealloc = (char *)TEE_Realloc(buf, 10000);
|
||||
pBufferRealloc = (char *)TEE_Realloc(buf, DEFAULT_REALLOC_SIZE);
|
||||
|
||||
if (caseId == BUFFER_IS_FREE)
|
||||
if (caseId == BUFFER_IS_FREE) {
|
||||
TEE_Free((void *)pBufferMalloc); // free the allocated buffer
|
||||
|
||||
if (caseId == INPUT_ISNULL)
|
||||
}
|
||||
if (caseId == INPUT_ISNULL) {
|
||||
pBufferRealloc = (char *)TEE_Realloc(NULL, nNewSize);
|
||||
else if (caseId == BUFFER_ISNOT_MALLOC)
|
||||
} else if (caseId == BUFFER_ISNOT_MALLOC) {
|
||||
pBufferRealloc = (char *)TEE_Realloc(buf, nNewSize);
|
||||
else
|
||||
} else {
|
||||
pBufferRealloc = (char *)TEE_Realloc((void *)pBufferMalloc, nNewSize);
|
||||
|
||||
}
|
||||
if ((pBufferRealloc == NULL) && (pBufferMalloc == NULL)) {
|
||||
return TEE_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user