diff options
author | George Hazan <george.hazan@gmail.com> | 2012-11-28 18:45:54 +0000 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2012-11-28 18:45:54 +0000 |
commit | a70382b0e8bed265a1d314d9f6aae8f2dd48d20b (patch) | |
tree | 9a99a073c0d7b9483dab51a0eebf04a9119f61ed /plugins/Quotes/src/Base64.cpp | |
parent | 68fb5b69ea8403a3f9dcb70b3133eb10e1711000 (diff) |
ex-protos moved to the Plugins folder
git-svn-id: http://svn.miranda-ng.org/main/trunk@2545 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/Quotes/src/Base64.cpp')
-rw-r--r-- | plugins/Quotes/src/Base64.cpp | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/plugins/Quotes/src/Base64.cpp b/plugins/Quotes/src/Base64.cpp new file mode 100644 index 0000000000..1854fb42fd --- /dev/null +++ b/plugins/Quotes/src/Base64.cpp @@ -0,0 +1,43 @@ +#include "StdAfx.h"
+#include "Base64.h"
+
+bool base64::encode(const BYTE* in, size_t inlen,std::vector<char>& 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<BYTE>& 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;
+}
|