From 5cd5a1735af6a5c649c2d6699f8022e722fff170 Mon Sep 17 00:00:00 2001 From: bptato Date: Wed, 3 Feb 2021 10:41:20 +0100 Subject: base64_encode: fix input and output length types --- etc.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'etc.c') diff --git a/etc.c b/etc.c index 7fabd03..0c3a004 100644 --- a/etc.c +++ b/etc.c @@ -2009,18 +2009,19 @@ static char Base64Table[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; char * -base64_encode(const unsigned char *src, int len) +base64_encode(const unsigned char *src, size_t len) { unsigned char *w, *at; const unsigned char *in, *endw; - int j, k; + int j; + size_t k; k = len; if (k % 3) k += 3 - (k % 3); k = k / 3 * 4; - if (k < len) + if (k + 1 < len) return NULL; w = GC_MALLOC_ATOMIC(k + 1); -- cgit v1.2.3