From 4d21dbb8f5715b561dfde34410dcc8b4473a0b27 Mon Sep 17 00:00:00 2001 From: Wilfried Goesgens Date: Sat, 10 May 2014 11:20:55 +0200 Subject: [PATCH] DecodeBase64: wrapper needs to 0-terminate buffer. --- libcitadel/lib/tools.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libcitadel/lib/tools.c b/libcitadel/lib/tools.c index fa8f1657d..bc0cb767b 100644 --- a/libcitadel/lib/tools.c +++ b/libcitadel/lib/tools.c @@ -342,10 +342,13 @@ size_t CtdlEncodeBase64(char *dest, const char *source, size_t sourcelen, int li int CtdlDecodeBase64(char *dest, const char *source, size_t length) { base64_decodestate _state; + int len; base64_init_decodestate(&_state); - return base64_decode_block(source, length, dest, &_state); + len = base64_decode_block(source, length, dest, &_state); + dest[len] = '\0'; + return len; } -- 2.30.2