ESP32: исправить base64 сериализацию Solana транзакции

This commit is contained in:
AidarKC 2026-06-12 23:48:38 +04:00
parent b583a86ade
commit 21030b1d51
2 changed files with 10 additions and 6 deletions

View File

@ -585,13 +585,17 @@ static void sha256calc(const uint8_t *in, size_t len, uint8_t *out32) {
}
static String base64Std(const uint8_t *data, size_t len) {
char out[96] = {};
size_t needed = ((len + 2) / 3) * 4 + 4;
std::vector<uint8_t> out(needed, 0);
size_t outLen = 0;
if (mbedtls_base64_encode(reinterpret_cast<uint8_t *>(out), sizeof(out), &outLen, data, len) != 0) {
if (mbedtls_base64_encode(out.data(), out.size(), &outLen, data, len) != 0) {
return "";
}
out[min(outLen, sizeof(out) - 1)] = '\0';
return String(out);
if (outLen >= out.size()) {
return "";
}
out[outLen] = '\0';
return String(reinterpret_cast<const char *>(out.data()));
}
static String base58From32(const uint8_t *data32) {

View File

@ -1,2 +1,2 @@
client.version=1.2.167
server.version=1.2.156
client.version=1.2.168
server.version=1.2.157