diff --git a/core/embed/projects/prodtest/cmd/prodtest_otp_variant.c b/core/embed/projects/prodtest/cmd/prodtest_otp_variant.c index 349349b363..f491bb7af7 100644 --- a/core/embed/projects/prodtest/cmd/prodtest_otp_variant.c +++ b/core/embed/projects/prodtest/cmd/prodtest_otp_variant.c @@ -17,6 +17,7 @@ * along with this program. If not, see . */ +#include #include #include @@ -25,6 +26,7 @@ #include #include "prodtest_optiga.h" +#include "rtl/mini_printf.h" static void prodtest_otp_variant_read(cli_t* cli) { if (cli_arg_count(cli) > 0) { @@ -52,6 +54,7 @@ static void prodtest_otp_variant_read(cli_t* cli) { cli_trace(cli, "Bytes read: %s", block_hex); char block_text[FLASH_OTP_BLOCK_SIZE * 4 + 1] = {0}; + size_t buffer_size = sizeof(block_text); // Make a list of integers separated by spaces char* dst = block_text; @@ -59,8 +62,9 @@ static void prodtest_otp_variant_read(cli_t* cli) { if (i != 0) { *dst++ = ' '; } - itoa(block[i], dst, 10); + mini_snprintf(dst, buffer_size, "%d", block[i]); dst += strlen(dst); + buffer_size -= strlen(dst); } cli_ok(cli, "%s", block_text);