From 162e60d66c78bd51aa44c691fe4f4e2f1deb990f Mon Sep 17 00:00:00 2001 From: Kirill Volinsky Date: Sat, 19 May 2012 14:24:27 +0000 Subject: added Quotes git-svn-id: http://svn.miranda-ng.org/main/trunk@76 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/Quotes/Base64.cpp | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 plugins/Quotes/Base64.cpp (limited to 'plugins/Quotes/Base64.cpp') diff --git a/plugins/Quotes/Base64.cpp b/plugins/Quotes/Base64.cpp new file mode 100644 index 0000000000..1854fb42fd --- /dev/null +++ b/plugins/Quotes/Base64.cpp @@ -0,0 +1,43 @@ +#include "StdAfx.h" +#include "Base64.h" + +bool base64::encode(const BYTE* in, size_t inlen,std::vector& out) +{ + int nOutLength = Base64EncodeGetRequiredLength((int)inlen); + out.resize(nOutLength); + char* p = &*out.begin(); + bool bResult = (TRUE == Base64Encode(in,(int)inlen,p,&nOutLength)); + if(false == bResult) + { + out.resize(nOutLength); + p = &*out.begin(); + bResult = (TRUE == Base64Encode(in,(int)inlen,p,&nOutLength)); + } + if(bResult) + { + out.resize(nOutLength); + } + + return bResult; +} + + +bool base64::decode(const char* in, size_t inlen,std::vector& out) +{ + int nOutLength = (int)inlen; + out.resize(nOutLength); + BYTE* p = &*out.begin(); + bool bResult = TRUE == Base64Decode(in,(int)inlen,p,&nOutLength); + if(false == bResult) + { + out.resize(nOutLength); + p = &*out.begin(); + bResult = TRUE == Base64Decode(in,(int)inlen,p,&nOutLength); + } + if(bResult) + { + out.resize(nOutLength); + } + + return true; +} -- cgit v1.2.3