From f33966fe8f3fba72b77ad8a3a162db4c6bf1ba97 Mon Sep 17 00:00:00 2001 From: Andreas Steffen Date: Mon, 10 Jan 2011 05:06:59 +0100 Subject: [PATCH] handle zero size Base64 conversions --- src/libcharon/plugins/tnccs_11/messages/imc_imv_msg.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/libcharon/plugins/tnccs_11/messages/imc_imv_msg.c b/src/libcharon/plugins/tnccs_11/messages/imc_imv_msg.c index c99cd2ef3c..eafb14e52b 100644 --- a/src/libcharon/plugins/tnccs_11/messages/imc_imv_msg.c +++ b/src/libcharon/plugins/tnccs_11/messages/imc_imv_msg.c @@ -64,6 +64,14 @@ static chunk_t encode_base64(chunk_t data) u_char *pos; size_t b64_chars, b64_lines; + /* handle empty message data object */ + if (data.len == 0) + { + encoding = chunk_alloc(1); + *encoding.ptr = '\0'; + return encoding; + } + /* compute and allocate maximum size of base64 object */ b64_chars = 4 * ((data.len + 2) / 3); b64_lines = (data.len + BYTES_PER_LINE - 1) / BYTES_PER_LINE; -- 2.47.2