dovecot: Added t_base64_decode_str().

dovecot at dovecot.org dovecot at dovecot.org
Mon Aug 6 21:12:55 EEST 2007


details:   http://hg.dovecot.org/dovecot/rev/6b0fe0f93896
changeset: 6180:6b0fe0f93896
user:      Timo Sirainen <tss at iki.fi>
date:      Mon Aug 06 20:49:06 2007 +0300
description:
Added t_base64_decode_str().

diffstat:

2 files changed, 14 insertions(+)
src/lib/base64.c |   11 +++++++++++
src/lib/base64.h |    3 +++

diffs (31 lines):

diff -r 5c6af3b74d5f -r 6b0fe0f93896 src/lib/base64.c
--- a/src/lib/base64.c	Mon Aug 06 19:45:01 2007 +0300
+++ b/src/lib/base64.c	Mon Aug 06 20:49:06 2007 +0300
@@ -170,3 +170,14 @@ int base64_decode(const void *src, size_
 
 	return ret;
 }
+
+buffer_t *t_base64_decode_str(const char *str)
+{
+	buffer_t *buf;
+	size_t len = strlen(str);
+
+	buf = buffer_create_dynamic(pool_datastack_create(),
+				    MAX_BASE64_DECODED_SIZE(len));
+	(void)base64_decode(str, len, NULL, buf);
+	return buf;
+}
diff -r 5c6af3b74d5f -r 6b0fe0f93896 src/lib/base64.h
--- a/src/lib/base64.h	Mon Aug 06 19:45:01 2007 +0300
+++ b/src/lib/base64.h	Mon Aug 06 20:49:06 2007 +0300
@@ -17,6 +17,9 @@ int base64_decode(const void *src, size_
 int base64_decode(const void *src, size_t src_size,
 		  size_t *src_pos_r, buffer_t *dest);
 
+/* Decode given string to a buffer allocated from data stack. */
+buffer_t *t_base64_decode_str(const char *str);
+
 /* max. buffer size required for base64_encode() */
 #define MAX_BASE64_ENCODED_SIZE(size) \
 	((size) / 3 * 4 + 2+2)


More information about the dovecot-cvs mailing list