Re: [PATCH] tools/nolibc/stdlib: fix memory error in realloc()

From: Ammar Faizi
Date: Tue Jan 09 2024 - 23:16:22 EST


On Tue, Jan 09, 2024 at 06:44:02PM -0500, Brennan Xavier McManus wrote:
> Pass user_p_len to memcpy() instead of heap->len to prevent realloc()
> from copying an extra sizeof(heap) bytes from beyond the allocated
> region.
>
> Signed-off-by: Brennan Xavier McManus <bxmcmanus@xxxxxxxxx>
> ---
>
> All tests from Ammar's original test program pass:
> https://gist.github.com/ammarfaizi2/db0af6aa0b95a0c7478bce64e349f021
> This fix was tested with the following added test for realloc():
> https://github.com/brennan913/nolibc-test/blob/main/nolibc_test.c#L73-L120

Hello Brennan,

Thank you for the fix!

Cc: stable@xxxxxxxxxxxxxxx
Reviewed-by: Ammar Faizi <ammarfaizi2@xxxxxxxxxxx>
Fixes: 0e0ff638400be8f497a35b51a4751fd823f6bd6a ("tools/nolibc/stdlib: Implement `malloc()`, `calloc()`, `realloc()` and `free()`")

--
Ammar Faizi