diff --git a/src/util-base64.c b/src/util-base64.c index 3a5754a074..b8434a564a 100644 --- a/src/util-base64.c +++ b/src/util-base64.c @@ -157,7 +157,8 @@ Base64Ecode DecodeBase64(uint8_t *dest, uint32_t dest_size, const uint8_t *src, } if (bbidx > 0 && bbidx < 4 && ((!valid && mode == BASE64_MODE_RFC4648))) { - padding = B64_BLOCK - bbidx; + /* Decoded bytes for 1 or 2 base64 encoded bytes is 1 */ + padding = bbidx > 1 ? B64_BLOCK - bbidx : 2; *decoded_bytes += ASCII_BLOCK - padding; DecodeBase64Block(dptr, b64); *consumed_bytes += bbidx;