* [ruby-dev:47484] [ruby-trunk - Bug #8605][Assigned] TestSocket_TCPSocket#test_initialize_failure fails on Windows
@ 2013-07-05 11:56 usa (Usaku NAKAMURA)
2013-07-06 0:21 ` [ruby-dev:47485] [ruby-trunk - Bug #8605] " akr (Akira Tanaka)
2013-07-08 2:21 ` [ruby-dev:47488] [ruby-trunk - Bug #8605][Rejected] " usa (Usaku NAKAMURA)
0 siblings, 2 replies; 4+ messages in thread
From: usa (Usaku NAKAMURA) @ 2013-07-05 11:56 UTC (permalink / raw
To: ruby developers list
Issue #8605 has been reported by usa (Usaku NAKAMURA).
----------------------------------------
Bug #8605: TestSocket_TCPSocket#test_initialize_failure fails on Windows
https://bugs.ruby-lang.org/issues/8605
Author: usa (Usaku NAKAMURA)
Status: Assigned
Priority: Normal
Assignee: akr (Akira Tanaka)
Category: ext
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-07-05 trunk 41797) [x64-mswin64_100]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN
=begin
表題の通りですが、こんな風に失敗しています。
76) Failure:
TestSocket_TCPSocket#test_initialize_failure [D:/tmp/mswin-build20130705-8260-1av0ek2/ruby/test/socket/test_tcp.rb:24]:
Expected /for\ "127\.0\.0\.1"\ port\ 11459/ to match "Only one usage of each socket address (protocol/network address/port) is normally permitted. - connect(2) for \"127.0.0.1\" port 11458".
テストを眺めると、クライアントポート側で失敗するはずだ、と明記されているわけですが、なぜかご覧の通りでサーバポート側でエラーメッセージが出力されております。
これはrubyでどうにかすべき問題でしょうか? それとも単にプラットフォーム依存として片付けるべき?
=end
--
http://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 4+ messages in thread
* [ruby-dev:47485] [ruby-trunk - Bug #8605] TestSocket_TCPSocket#test_initialize_failure fails on Windows
2013-07-05 11:56 [ruby-dev:47484] [ruby-trunk - Bug #8605][Assigned] TestSocket_TCPSocket#test_initialize_failure fails on Windows usa (Usaku NAKAMURA)
@ 2013-07-06 0:21 ` akr (Akira Tanaka)
2013-07-08 2:21 ` [ruby-dev:47488] [ruby-trunk - Bug #8605][Rejected] " usa (Usaku NAKAMURA)
1 sibling, 0 replies; 4+ messages in thread
From: akr (Akira Tanaka) @ 2013-07-06 0:21 UTC (permalink / raw
To: ruby developers list
Issue #8605 has been updated by akr (Akira Tanaka).
Parent task set to #8574
Bug #8574 にもあって、なにが起きてるのかなぁ、と思っていたのですが、
調べてみると、_WIN32 と __CYGWIN__ では SO_REUSEADDR を使っていないようです。
ext/socket/ipsocket.c:
9627 usa #if !defined(_WIN32) && !defined(__CYGWIN__)
9627 usa status = 1;
9627 usa setsockopt(fd, SOL_SOCKET, SO_REUSEADDR,
27529 nobu (char*)&status, (socklen_t)sizeof(status));
9627 usa #endif
r9627 からは [ruby-core:6765] をたどれて、Win32 では SO_REUSEADDR が
うまく動かないとのことですが、これはいまでもそうなんでしょうか。
----------------------------------------
Bug #8605: TestSocket_TCPSocket#test_initialize_failure fails on Windows
https://bugs.ruby-lang.org/issues/8605#change-40316
Author: usa (Usaku NAKAMURA)
Status: Assigned
Priority: Normal
Assignee: akr (Akira Tanaka)
Category: ext
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-07-05 trunk 41797) [x64-mswin64_100]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN
=begin
表題の通りですが、こんな風に失敗しています。
76) Failure:
TestSocket_TCPSocket#test_initialize_failure [D:/tmp/mswin-build20130705-8260-1av0ek2/ruby/test/socket/test_tcp.rb:24]:
Expected /for\ "127\.0\.0\.1"\ port\ 11459/ to match "Only one usage of each socket address (protocol/network address/port) is normally permitted. - connect(2) for \"127.0.0.1\" port 11458".
テストを眺めると、クライアントポート側で失敗するはずだ、と明記されているわけですが、なぜかご覧の通りでサーバポート側でエラーメッセージが出力されております。
これはrubyでどうにかすべき問題でしょうか? それとも単にプラットフォーム依存として片付けるべき?
=end
--
http://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 4+ messages in thread
* [ruby-dev:47488] [ruby-trunk - Bug #8605][Rejected] TestSocket_TCPSocket#test_initialize_failure fails on Windows
2013-07-05 11:56 [ruby-dev:47484] [ruby-trunk - Bug #8605][Assigned] TestSocket_TCPSocket#test_initialize_failure fails on Windows usa (Usaku NAKAMURA)
2013-07-06 0:21 ` [ruby-dev:47485] [ruby-trunk - Bug #8605] " akr (Akira Tanaka)
@ 2013-07-08 2:21 ` usa (Usaku NAKAMURA)
2013-07-08 2:42 ` [ruby-dev:47489] " Tanaka Akira
1 sibling, 1 reply; 4+ messages in thread
From: usa (Usaku NAKAMURA) @ 2013-07-08 2:21 UTC (permalink / raw
To: ruby developers list
Issue #8605 has been updated by usa (Usaku NAKAMURA).
Status changed from Assigned to Rejected
あー、そうかー、言われてみたらそんな話あったわー、という感じです。
わざわざ調べていただきありがとうございます。
(ちなみにさらに遡ったら r1800 からのようですね。)
事情は [ruby-core:6765] で説明されている通りですが、これは現在も
変わってないので、おとなしく諦めますかね。
テストの方は #8574 への対応ということで成瀬さんが既に変更済みですし。
----------------------------------------
Bug #8605: TestSocket_TCPSocket#test_initialize_failure fails on Windows
https://bugs.ruby-lang.org/issues/8605#change-40358
Author: usa (Usaku NAKAMURA)
Status: Rejected
Priority: Normal
Assignee: akr (Akira Tanaka)
Category: ext
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-07-05 trunk 41797) [x64-mswin64_100]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN
=begin
表題の通りですが、こんな風に失敗しています。
76) Failure:
TestSocket_TCPSocket#test_initialize_failure [D:/tmp/mswin-build20130705-8260-1av0ek2/ruby/test/socket/test_tcp.rb:24]:
Expected /for\ "127\.0\.0\.1"\ port\ 11459/ to match "Only one usage of each socket address (protocol/network address/port) is normally permitted. - connect(2) for \"127.0.0.1\" port 11458".
テストを眺めると、クライアントポート側で失敗するはずだ、と明記されているわけですが、なぜかご覧の通りでサーバポート側でエラーメッセージが出力されております。
これはrubyでどうにかすべき問題でしょうか? それとも単にプラットフォーム依存として片付けるべき?
=end
--
http://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 4+ messages in thread
* [ruby-dev:47489] Re: [ruby-trunk - Bug #8605][Rejected] TestSocket_TCPSocket#test_initialize_failure fails on Windows
2013-07-08 2:21 ` [ruby-dev:47488] [ruby-trunk - Bug #8605][Rejected] " usa (Usaku NAKAMURA)
@ 2013-07-08 2:42 ` Tanaka Akira
0 siblings, 0 replies; 4+ messages in thread
From: Tanaka Akira @ 2013-07-08 2:42 UTC (permalink / raw
To: ruby developers list
2013年7月8日 11:21 usa (Usaku NAKAMURA) <usa@garbagecollect•jp>:
>
> あー、そうかー、言われてみたらそんな話あったわー、という感じです。
> わざわざ調べていただきありがとうございます。
> (ちなみにさらに遡ったら r1800 からのようですね。)
>
> 事情は [ruby-core:6765] で説明されている通りですが、これは現在も
> 変わってないので、おとなしく諦めますかね。
> テストの方は #8574 への対応ということで成瀬さんが既に変更済みですし。
エラーメッセージのテストなので、
bind が失敗するならなんでもいいとは思うのですが。
EADDRINUSE 以外だと、
Unix なら port 1023 以下で EACCES とかもありますが、
それはおそらく Windows だと動いちゃいますよねぇ。
127.0.0.1 と ::1 との組み合わせで EAFNOSUPPORT というのは
現在なら大抵の環境で動く気もしますが、どうなんだろうなぁ。
あぁ、自分の IP アドレスではない IP アドレスを指定して
EADDRNOTAVAIL という手もあるか。
そういうアドレスをどうやって選ぶか、という話はありますが。
--
Tanaka Akira
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-07-08 3:09 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-07-05 11:56 [ruby-dev:47484] [ruby-trunk - Bug #8605][Assigned] TestSocket_TCPSocket#test_initialize_failure fails on Windows usa (Usaku NAKAMURA)
2013-07-06 0:21 ` [ruby-dev:47485] [ruby-trunk - Bug #8605] " akr (Akira Tanaka)
2013-07-08 2:21 ` [ruby-dev:47488] [ruby-trunk - Bug #8605][Rejected] " usa (Usaku NAKAMURA)
2013-07-08 2:42 ` [ruby-dev:47489] " Tanaka Akira
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).