From: Tanaka Akira Date: 2011-07-30T08:59:17+09:00 Subject: [ruby-core:38605] Re: [Ruby 1.9 - Feature #5097] Supported platforms of Ruby 1.9.3 2011/7/30 Jeremy Evans : > 16:28:55.962400 fe80::92fb:a6ff:feed:afa1.10000 > fe80::92fb:a6ff:feed:afa1.23171: [udp sum ok] udp 3 (len 11, hlim 64) > tcpdump: WARNING: compensating for unaligned libpcap packets > 16:28:55.962407 fe80::1 > fe80::92fb:a6ff:feed:afa1: icmp6: fe80::92fb:a6ff:feed:afa1 unreachable address (len 59, hlim 64) > > Note how the response is not a UDP packet but an ICMP packet with an fe80::1 source address saying the response is unreachable. This is why the program times out, no UDP response is received. > > So maybe there is a bug here, but OpenBSD supports the desired feature without the pktinfo argument in the sendmsg call. If the pktinfo argument is needed on other systems to work correctly, would you support a patch that adds the pktinfo argument to the sendmsg call unless /openbsd/ =~ RUBY_PLATFORM ? It is possible if OpenBSD doesn't support dynamic IP change here. (pktinfo is required for dynamic IP change.) However I'd like to confirm it is really a bug of OpenBSD. I think the best way to do is a bug repot to OpenBSD. We need a test program written in C for good bug report, though. -- Tanaka Akira