Skip to content

Commit 7784ff2

Browse files
committed
Fix sizeof-on-pointer warnings and add client-address deny test for DMA allow list
1 parent 8209c7f commit 7784ff2

1 file changed

Lines changed: 18 additions & 5 deletions

File tree

test/wh_test_clientserver.c

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -351,6 +351,19 @@ static int _testDma(whServerContext* server, whClientContext* client)
351351
WH_TEST_ASSERT_RETURN(0 == memcmp(testMem.srvBufAllow, testMem.cliBuf,
352352
sizeof(testMem.srvBufAllow)));
353353

354+
/* Check that out-of-allowlist client addresses are rejected */
355+
WH_TEST_ASSERT_RETURN(WH_ERROR_ACCESS == whServerDma_CopyFromClient(
356+
server, testMem.srvBufAllow,
357+
(uintptr_t)testMem.srvBufDeny,
358+
sizeof(testMem.srvBufAllow),
359+
(whServerDmaFlags){0}));
360+
WH_TEST_ASSERT_RETURN(WH_ERROR_ACCESS ==
361+
whServerDma_CopyToClient(
362+
server, (uintptr_t)testMem.srvBufDeny,
363+
testMem.srvBufAllow,
364+
sizeof(testMem.srvBufAllow),
365+
(whServerDmaFlags){0}));
366+
354367
/* Check that zero-sized copies fail, even from allowed addresses */
355368
WH_TEST_ASSERT_RETURN(WH_ERROR_BADARGS == whServerDma_CopyFromClient(
356369
server, testMem.srvBufAllow,
@@ -1224,8 +1237,8 @@ int whTest_ClientServerClientConfig(whClientConfig* clientCfg)
12241237

12251238
/* Prepare echo test */
12261239
send_len =
1227-
snprintf(send_buffer, sizeof(send_buffer), "Request:%u", counter);
1228-
(void)snprintf(recv_buffer, sizeof(recv_buffer), "NOTHING RECEIVED");
1240+
snprintf(send_buffer, WOLFHSM_CFG_COMM_DATA_LEN, "Request:%u", counter);
1241+
(void)snprintf(recv_buffer, WOLFHSM_CFG_COMM_DATA_LEN, "NOTHING RECEIVED");
12291242
recv_len = 0;
12301243

12311244
WH_TEST_RETURN_ON_FAIL(ret = wh_Client_Echo(client, send_len, send_buffer, &recv_len, recv_buffer));
@@ -1284,8 +1297,8 @@ int whTest_ClientServerClientConfig(whClientConfig* clientCfg)
12841297
whNvmId lastAvailObjects = 0;
12851298

12861299
label_len = snprintf(label, sizeof(label), "Label:%d", id);
1287-
len = snprintf(send_buffer, sizeof(send_buffer), "Data:%d Counter:%d",
1288-
id, counter);
1300+
len = snprintf(send_buffer, WOLFHSM_CFG_COMM_DATA_LEN,
1301+
"Data:%d Counter:%d", id, counter);
12891302

12901303
lastAvailObjects = avail_objects;
12911304

@@ -1323,7 +1336,7 @@ int whTest_ClientServerClientConfig(whClientConfig* clientCfg)
13231336
WH_TEST_ASSERT_RETURN(server_rc == WH_ERROR_OK);
13241337
WH_TEST_ASSERT_RETURN(gid == id);
13251338

1326-
memset(recv_buffer, 0, sizeof(recv_buffer));
1339+
memset(recv_buffer, 0, WOLFHSM_CFG_COMM_DATA_LEN);
13271340
WH_TEST_RETURN_ON_FAIL(ret = wh_Client_NvmRead(client, id, 0, glen,
13281341
&server_rc, &rlen,
13291342
(uint8_t*)recv_buffer));

0 commit comments

Comments
 (0)