Hi All,

I'm working on an embedded webserver project with
OpenSSL 0.9.6a.  My problem is with BIO_read
(ssl2_read) that seems to return an incorrect numbers
of bytes when the ssl socket is reused as in http post
of a large object.  For instance, when I do a http
multi-part post of a picture (>4M), I read each
encrypted packet size to be about 1.5K.  But BIO_read
will return a larger number (4K), which makes no sense
to me.  Similarly, I tried the upload with a text file
that also returned a large number (4K again) for each
packet; however, the buffer returned indeed contains
the correct data plus a bunch of garbage characters
appended.  While this indicates the decryption is
working fine, the SSL buffer management seems to be
the problem.  Do I've to manually clear the buffer
after each BIO_read?  If so, how to do it?  I know
that if I do a BIO_free_all + openssl_free and start a
new SSL connection will work for a simple http
request/reply. But how do I reuse the connection (e.g.
keep_alive) for multiple transfers?  

Any ideas or suggestions?  

Thanks in advance.

regards,
Cheuk

__________________________________________________
Do You Yahoo!?
Make international calls for as low as $.04/minute with Yahoo! Messenger
http://phonecard.yahoo.com/
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to