Boost logo

Boost :

From: Carlo Medas (carlomedas_at_[hidden])
Date: 2008-05-09 15:13:38

Dear all,

first of all, kindly please let me know if I'm sending messages in the wrong

I've investigated more in-deep this issue and it seems that async_shutdown
is producing a stack overflow.
This has been tested with latest boost version.
The result is the same if I try with Windows Xp (MSVC v8.0-express) and with
a Linux RHEL 4 64bit.
I've enclosed the linux coredump.

Please let me know and thanks in advance.

Kind regards,

Carlo Medas

On Fri, May 9, 2008 at 4:02 PM, Carlo Medas <carlomedas_at_[hidden]> wrote:

> Hi guys,
> I've question on behaviour of boost::asio::ssl::stream::async_shutdown
> I would expect that this should behave as any other async method of ASIO:
> both in case of succeed or error it should call my handler on completion.
> At some point in my code I call:
> > m_sslSocket.async_shutdown(boost::bind(&TestClient::handle_sslshutdown,
> this, boost::asio::placeholders::error));
> > void TestClient::handle_sslshutdown(const boost::system::error_code&
> error)
> > {
> > std::cout << "SSL shutdown completed with error
> <"<<error.message()<<">\n";
> > socket_.lowest_layer().close();
> > std::cout << "Lower TCP layer closed\n";
> > }
> But it's never called on successful shutdown, it's called only if the other
> peer previously yet closed the connection, thus resulting in an error. So my
> handler is called with relative error code; in positive case, my handler is
> never called.
> What am I missing? Something here in client code or something in the server
> code?
> Thanks in advance and best regards,
> Carlo Medas

Boost list run by bdawes at, gregod at, cpdaniel at, john at