avutil/tests/base64: Check with too short output array

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit c304784a86)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer 2024-05-11 03:14:16 +02:00
parent ef80220f32
commit a0af91c348
No known key found for this signature in database
GPG Key ID: B18E8928B3948D64

View File

@ -64,6 +64,16 @@ static int test_encode_decode(const uint8_t *data, unsigned int data_size,
printf("Failed: decode to NULL buffer\n");
return 1;
}
if (data_size > 0 && (data2_size = av_base64_decode(data2, encoded, data_size - 1)) != data_size - 1) {
printf("Failed: out of array write\n"
"Encoded:\n%s\n", encoded);
return 1;
}
if (data_size > 1 && (data2_size = av_base64_decode(data2, encoded, data_size - 2)) != data_size - 2) {
printf("Failed: out of array write\n"
"Encoded:\n%s\n", encoded);
return 1;
}
if (strlen(encoded)) {
char *end = strchr(encoded, '=');
if (!end)