Changed code to:

      bio = BIO_new(BIO_f_base64());
      BIO_push(bio, mbio);
      int bytes_stored = i2d_PKCS12_bio(bio, p12);
      BIO_flush(bio);

No effect still.  I was also searching the archives and found this:
http://www.mail-archive.com/[EMAIL PROTECTED]/msg36055.html
This person was seeing only 9 bytes out of expected 13.  I could not
see a resolution to the above problem and I am leading to believe that
my problem could be very similar to his.

Thanks


On Thu, 9 Sep 2004 20:56:20 +0200, Dr. Stephen Henson <[EMAIL PROTECTED]> wrote:
> 
> 
> On Thu, Sep 09, 2004, Smith Baylor wrote:
> 
> > A PKCS12 object is encrypted with a shared secret.  When I use  the
> > function i2d_PKCS12_fp() to write to a file, it works, but, when I use
> > this to store in a BIO and convert this into base64, it does only
> > 2/3rds of it.  Why is this?  Any thoughts or pointers?
> >
> > Thanks
> >
> >
> >
> > On Thu, 9 Sep 2004 08:32:36 -0700, Smith Baylor <[EMAIL PROTECTED]> wrote:
> > >         BIO *mbio, *b64bio, *bio;
> > >
> > >         mbio = BIO_new(BIO_s_mem());
> > >         b64bio = BIO_new(BIO_f_base64());
> > >         bio = BIO_push(b64bio, mbio);
> > >         int bytes_stored = i2d_PKCS12_bio(bio, p12);
> > >         BIO_flush(mbio2);
> > >
> > >         BIO_get_mem_data(mbio, (unsigned char *)&p12_data_tmp);
> > >         p12_data = (unsigned char*)OPENSSL_malloc(bytes_stored + 1);
> > >         strncpy(p12_data, p12_data_tmp, bytes_stored);
> > >         p12_data[bytes_stored] = '\0';
> > >
> > > bytes_stored gives me 4030 bytes, but, when I try to print or save the
> > > p12_data, I am able to get only 3000 bytes and the program stops.
> > > What am I doing wrong?
> > >
> 
> At least one problem is that you need to call BIO_flush() on the BIO chain
> (bio in your example above) not the memory BIO.
> 
> Steve.
> --
> Dr Stephen N. Henson. Email, S/MIME and PGP keys: see homepage
> OpenSSL project core developer and freelance consultant.
> Funding needed! Details on homepage.
> Homepage: http://www.drh-consultancy.demon.co.uk
> ______________________________________________________________________
> 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]

Reply via email to