[#45637] [ruby-trunk - Feature #6440][Open] 引数にIOを渡した場合のMarshal.loadにバッファを持たせたい — "Glass_saga (Masaki Matsushita)" <glass.saga@...>

14 messages 2012/05/16

[#45670] [ruby-trunk - Bug #6479][Open] ipaddr.rbの受け付ける書式が、プラットフォームによって異なる — "kachick (Kenichi Kamiya)" <kachick1+ruby@...>

9 messages 2012/05/22

[ruby-dev:45693] Re: [ruby-trunk - Bug #4387][Feedback] test_socket_connect_nonblock(TestSocketAddrinfo) がまれに失敗する

From: Takahiro Kambe <taca@...>
Date: 2012-05-30 13:59:31 UTC
List: ruby-dev #45693
In message <redmine.journal-26722.20120520075850@ruby-lang.org>
	on Sun, 20 May 2012 07:58:51 +0900,
	"naruse (Yui NARUSE)" <naruse@airemix.jp> wrote:
> [ruby-list:38139] にもスレがありますね。
> 
> まとめると、
> 1. connect_nonblock を呼ぶ
> 2.1. ECONNREFUSED が返る (localhost など結果が瞬間的に返る場合)
> 2.2.1. EINPROGRESS が返る
> 2.2.2. select で待つ→成功か失敗に収束
> 2.2.3.1. EISCONN が返る (成功)
> 2.2.3.2. EINVAL が返る (失敗)
> って事のようです。
> ここで EINVAL が返るのはFreeBSD や NetBSD もそうです。
> Linux の場合、とりあえず手元で試した「localhost の開いていないポートに接続」というケースでは、
> ECONNABORTED が返ってきました。
...(snip)...
>  これだけではアレなので、いくつか調査報告など
>  
>  w3cのhttpのサンプルコードだと、EINVALはEISCONNと同等の処理をするようになっています。
>  http://www.w3.org/Library/src/HTTCP.c
>  
>  NetBSDのconnectにも昔EINVALを返す問題があったそうですが、どう対処したのかはよく分かりませんでした
>  http://mail-index.netbsd.org/netbsd-bugs/2003/08/18/0002.html
>  ↑ なんと報告者は Kambeさん
これは、当時の ruby-list での議論を受けて報告したものですが、華麗に
無視されて今日に至っておりますな。

-- 
神戸 隆博 / Takahiro Kambe 


In This Thread

Prev Next