
From: viktor kougitko [mailto:klug@apriorit.com]
From: "Scott" <cheesy4poofs@cox.net>
[snip]
It all seemed great at first, because it seemed to seemlessly work. But eventually the communications break down. I either get asserts in my code from unexpected data in the stream, or the client hangs waiting for data that never appears or any of several different stream problems. It's rarely the exact same thing. But it eventually always fails. Especially on long sustained transfers.
it seems that problem with buffer sizes try to change asio/ssl/detail/openssl_stream_service.hpp openssl_stream_service::create ::BIO_new_bio_pair(&int_bio, 3*8192, &impl->ext_bio, 3*8192); it helps in my case
I know next to nothing about asio's SSL implementation, but this reference to buffer sizes reminds me of a problem that we saw in a previous version of TAO: http://deuce.doc.wustl.edu/bugzilla/show_bug.cgi?id=1429 The fix in that case was to enable partial writes in open ssl, using SSL_set_mode to enable SSL_MODE_ENABLE_PARTIAL_WRITE and SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER. HTH, Éric