From cb35e21dca397c25ebf0ec0414552c622f548939 Mon Sep 17 00:00:00 2001 From: "Kyler \"FĂ©lix\" Eastridge" Date: Wed, 16 Sep 2026 12:28:28 -0400 Subject: #6322 Fix truncation issue in LLBase64::decodeAsString by using correct buffer length --- indra/llcommon/tests/llbase64_test.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'indra/llcommon/tests') diff --git a/indra/llcommon/tests/llbase64_test.cpp b/indra/llcommon/tests/llbase64_test.cpp index 69b062fc0c..e8d9180444 100644 --- a/indra/llcommon/tests/llbase64_test.cpp +++ b/indra/llcommon/tests/llbase64_test.cpp @@ -74,4 +74,22 @@ namespace tut (result == "c9+s/4xGMX3smy3HZRGkg+YTUEBwNYdi7QwaSH4OkY92xAuxhKnDhg==") ); } + template<> template<> + void base64_object::test<3>() + { + std::string result; + + LLUUID nothing; + result = LLBase64::decodeAsString("AAAAAAAAAAAAAAAAAAAAAA=="); + ensure_equals("decode blank uuid length", result.size(), (size_t)UUID_BYTES); + ensure("decode blank uuid bytes", + (memcmp(result.data(), ¬hing.mData[0], UUID_BYTES) == 0) ); + + LLUUID id("526a1e07-a19d-baed-84c4-ff08a488d15e"); + result = LLBase64::decodeAsString("UmoeB6Gduu2ExP8IpIjRXg=="); + ensure_equals("decode random uuid length", result.size(), (size_t)UUID_BYTES); + ensure("decode random uuid bytes", + (memcmp(result.data(), &id.mData[0], UUID_BYTES) == 0) ); + } + } -- cgit v1.3