@@ -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