This works for me:
void base64Decode(unsigned char* pIn, int inLen, unsigned char* pOut,
int& outLen)
{
// create a memory buffer containing base64 encoded data
BIO* bmem = BIO_new_mem_buf((void*)pIn, inLen);
// push a Base64 filter so that reading from buffer decodes it
BIO *bioCmd = BIO_new(BIO_f_base64());
// we don't want newlines
BIO_set_flags(bioCmd, BIO_FLAGS_BASE64_NO_NL);
bmem = BIO_push(bioCmd, bmem);
int finalLen = BIO_read(bmem, (void*)pOut, outLen);
BIO_free_all(bmem);
outLen = finalLen;
}
On Fri, Sep 4, 2009 at 1:37 PM, Nigel Sollars<[email protected]> wrote:
> HI all,
>
> I have a working example of Encoding base64 using the BIO methods but
> decrypting a string is being somewhat problematic. The code in the man page
> for decoding does not work either as the stdin new_fp does not hand off /
> stop listening for input.
>
> The openssl version is 0.9.8i
>
> If anyone could supply a working example I would appreciate it,
>
> Regards
> Nigel
> ______________________________________________________________________
> OpenSSL Project http://www.openssl.org
> User Support Mailing List [email protected]
> Automated List Manager [email protected]
>
______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List [email protected]
Automated List Manager [email protected]