<?xml version="1.0" encoding="windows-1252"?>
<node id="946757" title="Re^2: IO::Socket connect fails to block" created="2012-01-07 08:12:35" updated="2012-01-07 08:12:35">
<type id="11">
note</type>
<author id="890813">
cavac</author>
<data>
<field name="doctext">
&lt;p&gt;&lt;i&gt;Given description is valid for modern Linux and may be slightly different on other systems.&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;I agree. Depending on whatever crappy windows version one uses, blocking sockets may not block or non-blocking sockets may block. And there's a difference between blocking while communicating and blocking while waiting for a new connection.&lt;/p&gt;

&lt;p&gt;For me, it was always a bit confusing when switching between Windows and Linux - or to be more precise developing basic TCP connections anywhere. I "fixed" this PEBCAC problem by switching to HTTP whenever possible. In my case, this usually means HTTP::Server::Simple::CGI or Maplat on the server and something like WWW::Mechanize::GZip on the client.&lt;/p&gt;

&lt;p&gt;Of course, this is only my small, personal development universe, yours may have different requirements and bugs or a even better developer altogether...&lt;/p&gt;

&lt;!-- Node text goes above. Div tags should contain sig only --&gt;
&lt;div class="pmsig"&gt;&lt;div class="pmsig-890813"&gt;
"Believe me, Mike, I calculated the odds of this succeeding against the odds I was doing something incredibly stupid… and I went ahead anyway." (Crow in "MST3K The Movie")
&lt;/div&gt;&lt;/div&gt;</field>
<field name="root_node">
946643</field>
<field name="parent_node">
946709</field>
</data>
</node>
