I believe I have found a fix for ticket #598, in which large transfers
receive the message:

  error:1409F07F:SSL routines:SSL3 WRITE_PENDING:bad write retry

The problem is in the module, do_ssl3_write.  It calls the static module,
ssl3_write_pending, twice.  The first call is made if the condition,
s->s3->wbuf.left != 0, is met.  The second call is made if execution falls
through to the end of the module.  Before making the second call, the
write pending buffer address is updated:

  s->s3->wpend_buf=buf;

But this is not done before this first call.  The fix is adding the update
before the first call.

The patch was built against openssl-0.9.7d.  To use it, cd to the top
level directory and run:

  patch -p1 < WRITE_PENDING-bad_write_retry.diff

Jim Sansing

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       openssl-dev@openssl.org
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to