Boost C++ Libraries: Ticket #6048: async_connect sometimes returns succes in case of error https://svn.boost.org/trac10/ticket/6048 <p> When listen queue of unix local socket is overflowed, connect() syscall returns EAGAIN, asio does not treat this as error and returns success to async_connect handler. </p> <p> Reproduced on the following system: Linux maildesk-test 2.6.32-5-amd64 <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/1" title="#1: Bugs: boost.build causes ftjam to segfault (closed: Wont Fix)">#1</a> SMP Tue Jun 14 09:42:28 UTC 2011 x86_64 GNU/Linux. </p> <p> Test program attached, it tries to do write() after successful connect. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/6048 Trac 1.4.3 Gennady Proskurin <gpr@…> Mon, 24 Oct 2011 09:41:13 GMT attachment set https://svn.boost.org/trac10/ticket/6048 https://svn.boost.org/trac10/ticket/6048 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">conn.cc</span> </li> </ul> Ticket chris_kohlhoff Thu, 12 Jan 2012 12:27:04 GMT <link>https://svn.boost.org/trac10/ticket/6048#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/6048#comment:1</guid> <description> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/76430" title="On linux, connect can return EAGAIN in certain circumstances. Remap to ...">[76430]</a>) On linux, connect can return EAGAIN in certain circumstances. Remap to another error so that it doesn't look like a non-blocking operation. Refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/6048" title="#6048: Bugs: async_connect sometimes returns succes in case of error (closed: fixed)">#6048</a>. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>chris_kohlhoff</dc:creator> <pubDate>Sun, 15 Jan 2012 13:47:35 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/6048#comment:2 https://svn.boost.org/trac10/ticket/6048#comment:2 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/76516" title="Merge from trunk: * Chrono support. * Added object_handle support. ...">[76516]</a>) Merge from trunk: </p> <ul><li>Chrono support. </li></ul><ul><li>Added object_handle support. </li></ul><ul><li>Need to enable the basic_handle class when object_handle is supported. </li></ul><ul><li>Update copyright notices. </li></ul><ul><li>Fix MSVC "performance warning". </li></ul><ul><li>Fix for NetBSD. Fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/6098" title="#6098: Bugs: asio doesn't compile on NetBSD (closed: fixed)">#6098</a>. </li></ul><ul><li>Fix regression in buffered_write_stream. Fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/6310" title="#6310: Bugs: Buffered write stream broken (closed: fixed)">#6310</a>. </li></ul><ul><li>Fix deadlock on Mac OS X. Fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/6275" title="#6275: Bugs: On Mac OS X deadline_timer::cancel() may hangs (closed: fixed)">#6275</a>. </li></ul><ul><li>On linux, connect can return EAGAIN in certain circumstances. Remap to another error so that it doesn't look like a non-blocking operation. Fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/6048" title="#6048: Bugs: async_connect sometimes returns succes in case of error (closed: fixed)">#6048</a>. </li></ul><ul><li>Fix non-paged pool "leak" on Windows when io_service is repeatedly run without anything to do. Fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/6321" title="#6321: Bugs: non-paged pool memory leak in win_iocp_io_service (closed: fixed)">#6321</a>. </li></ul><ul><li>Disable object_handle on Windows CE. </li></ul><ul><li>Add extra include required for OVERLAPPED struct. </li></ul><ul><li>Fix doxygen comments. </li></ul><ul><li>Update documentation. </li></ul><ul><li>Add missing class. </li></ul><ul><li>Update copyright year. </li></ul> Ticket