[#28677] `Socket#unpack_sockaddr_un': sockaddr_un size differs - 15 required; 110 given (TypeError) — Tanaka Akira <akr@...17n.org>
ふと気がついたのですが、Socket.unpack_sockaddr_un に
[#28681] ブロックパラメータと多値について — Takaaki Tateishi <ttate@...>
まつもと ゆきひろです
[#28689] digest.rb — Tanaka Akira <akr@...17n.org>
require 'digest/sha2' の sha2 がどうも余計に思えるので、
久しぶりに復帰。
In article <863bav6a0w.knu@iDaemons.org>,
[#28694] test/socket for Windows — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
[#28700] irb/init.rb code suggestion to find user's home directory in windows — keiju@... (Keiju ISHITSUKA)
けいじゅ@いしつかです.
[#28708] 1.8.5 release schedule? — URABE Shyouhei <root@...>
というわけで今日の基調講演で8月に1.8.5が出ることになったわけですが。
まつもと ゆきひろです
卜部です。
卜部です。
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
とみたです。
とみたです。
卜部です。
柳田です。
In article <y7vnup05.wl%yanagi@shakenbu.org>,
> いちおう問題の切り分けをするために確認したいんですが、その環
In article <veqrun77.wl%yanagi@shakenbu.org>,
mswin32 版ではどうなるのだろうと思って
Cygwin @ WindowsXP SP2 です。
In article <449D66EC.8050405@cyanet.jp>,
send の第一引数が mesg なので変わって当然でした orz
Cで書いたプログラムで127.0.0.1に向かって空データを送ったところ無事届きま
ruby が 0.0.0.0 で待ち受けて、C言語プログラムで 127.0.0.1 に空パケットを
下記の通り Winsock2 を使わずにC言語でプログラムを書いて、空パケットを投
In article <449D921F.8080109@cyanet.jp>,
永井@知能.九工大です.
永井@知能.九工大です.
まつもと ゆきひろです
こんにちは、なかむら(う)です。
まつもと ゆきひろです
卜部です。
こんにちは、なかむら(う)です。
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
卜部です。
In article <1155082949.798513.13047.nullmailer@x31.priv.netlab.jp>,
[#28715] several problems on the big commit — Tanaka Akira <akr@...17n.org>
件の大きなコミットをざっと眺めてみたのですが、
[#28718] binding の仕様変更? or バグ? — Hidetoshi NAGAI <nagai@...>
永井@知能.九工大です.
まつもと ゆきひろです
永井@知能.九工大です.
まつもと ゆきひろです
[#28720] IO.readとバイナリモード — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
[#28729] backport Process.getrlimit and Process.setrlimit to 1.8 — Tanaka Akira <akr@...17n.org>
何回か (chkbuild で CPU 時間を制限するとか、cgi で CPU 時間
まつもと ゆきひろです
大原です。
[#28741] not ok iterator 80 -- ./sample/test.rb:1104 — Tanaka Akira <akr@...17n.org>
sample/test.rb が 2つ失敗していますが、最初の失敗は次のものです。
[#28744] rational 1.08 — Tadayoshi Funaba <tadf@...>
ふなばです。
原です。
ふなばです。
まつもと ゆきひろです
まつもと ゆきひろです
原です。
[#28747] lack in pp — Tadashi Saito <shiba@...2.accsnet.ne.jp>
こんにちは。斎藤と申します。
[#28770] signal & native-thread — Hidetoshi NAGAI <nagai@...>
永井@知能.九工大です.
まつもと ゆきひろです
永井@知能.九工大です.
[#28778] GC problem (?) in 1.8 — URABE Shyouhei <root@...>
卜部です。
In article <449851E1.9030302@mput.dip.jp>,
[#28786] "abc"[3] returns "" — Tanaka Akira <akr@...17n.org>
test-all が
[#28805] `DRb::DRbMessage#recv_request': uninitialized constant DRb::DRbMessage::Values (NameError) — Tanaka Akira <akr@...17n.org>
[ruby-dev:28802] のパッチがあたると、次はこうです。
[#28812] test_return_trace_func(TestIterator): /tmp/19/lib/ruby/1.9/test/unit.rb:275: ArgumentError — Tanaka Akira <akr@...17n.org>
で、次は
[#28822] when *a — Minero Aoki <aamine@...>
青木です。
[#28840] SEGV by block.call — Tanaka Akira <akr@...17n.org>
どうも boron での SEGV が直らないので、
[#28875] rb_define_methods — SASADA Koichi <ko1@...>
ささだです。
卜部です。
まつもと ゆきひろです
[ruby-dev:28838] Re: udp test with ruby 1.8.5 preview1 on cygwin
下記の通り Winsock2 を使わずにC言語でプログラムを書いて、空パケットを投
げたところ届きませんでした。
$ cat udptest-unix.c
#include <stdlib.h>
#include <cygwin/in.h>
#include <sys/types.h>
#include <sys/socket.h>
int main(int argc, char *argv[]) {
int fd;
struct sockaddr_in sin;
char *addr = "127.0.0.1";
fd = socket(AF_INET, SOCK_DGRAM, 0);
sin.sin_family = PF_INET;
sin.sin_port = htons(atoi(argv[1]));
inet_aton(addr, &(sin.sin_addr));
sendto(fd, "a", 1, 0, (struct sockaddr *)&sin, sizeof(sin));
close(fd);
return 0;
}
よって送出できないのは cygwin が悪いということになるのでしょうかね...
空ではないパケットについては届きました。
> ruby が 0.0.0.0 で待ち受けて、C言語プログラムで 127.0.0.1 に空パケットを
> 投げても届きました。
>
> あれこれやったのを纏めるとこんな感じのようです。
>
> ■空パケット
> 受信側 送信側
> × cygwin-ruby 0.0.0.0 cygwin-ruby 0.0.0.0
> × cygwin-ruby 0.0.0.0 cygwin-ruby 127.0.0.1
> × cygwin-ruby 127.0.0.1 cygwin-ruby 127.0.0.1
> × cygwin-ruby 0.0.0.0 C言語 0.0.0.0
> ○ cygwin-ruby 0.0.0.0 C言語 127.0.0.1
> ○ cygwin-ruby 127.0.0.1 C言語 127.0.0.1
> × mswin32-ruby 0.0.0.0 mswin32-ruby 0.0.0.0
> ○ mswin32-ruby 127.0.0.1 mswin32-ruby 127.0.0.1
>
> ■非空パケット
> 受信側 送信側
> × cygwin-ruby 0.0.0.0 cygwin-ruby 0.0.0.0
> ○ cygwin-ruby 0.0.0.0 cygwin-ruby 127.0.0.1
> ○ cygwin-ruby 127.0.0.1 cygwin-ruby 127.0.0.1
> ○ cygwin-ruby 0.0.0.0 C言語 127.0.0.1
> ○ cygwin-ruby 127.0.0.1 C言語 127.0.0.1
>
> 纏めると
> 1. 0.0.0.0 に送信することは出来ない。
> 2. cygwin-ruby は空パケットを送出できない。
>
> なんですかね...
>
>> Cで書いたプログラムで127.0.0.1に向かって空データを送ったところ無事届きま
>> した。
>> 0.0.0.0 はダメでした。
>>
>> 127.0.0.1 については送出側の問題ということになるのでしょうかね。
>> ----------------------------------------------------------------------
>> $ /usr/local/ruby-1.8.5-preview1/bin/ruby -rsocket -ve '
>> u = UDPSocket.new
>> u.bind("127.0.0.1", 0)
>> p u.recv(10)
>> '
>> ruby 1.8.5 (2006-06-22) [i386-cygwin]
>> ""
>> ----------------------------------------------------------------------
>> $ cat udptest.c
>> #include <stdio.h>
>> #include <stdlib.h>
>> #include <winsock2.h>
>> int main(int argc, char *argv[]) {
>> WSADATA wsaData;
>> SOCKET Socket;
>> SOCKADDR_IN Addr;
>> char* Buf = "a";
>>
>> WSAStartup(MAKEWORD(2,2), &wsaData);
>> Socket = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
>> Addr.sin_family = AF_INET;
>> Addr.sin_port = htons(atoi(argv[1]));
>> Addr.sin_addr.s_addr = inet_addr("127.0.0.1");
>> sendto(Socket, Buf, 0, 0, (SOCKADDR*)&Addr, sizeof(Addr));
>> closesocket(Socket);
>> WSACleanup();
>> return 0;
>> }
>>
>> $ gcc udptest.c -lwsock32
>> In file included from udptest.c:3:
>> /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api/winsock2.h:103:2:
>> warning: #warning "fd_set and associated macros have been defined in
>> sys/types.
>> This may cause runtime problems with W32 sockets"
>>
>> $ ./a.exe 4231
>>
>>> send の第一引数が mesg なので変わって当然でした orz
>>> 空だとダメですね.
>>>
>>> $ /usr/local/ruby-1.8.5-preview1/bin/ruby -rsocket -ve '
>>>> u1 = UDPSocket.new
>>>> u2 = UDPSocket.new
>>>> u1.bind("127.0.0.1", 0)
>>>> u2.send("", 0, u1.getsockname)
>>>> p u1.recv(10)
>>>> '
>>> ruby 1.8.5 (2006-06-22) [i386-cygwin]
>>>
>>> -e:6:in `recv': Interrupt
>>> from -e:6
>>>
>>> $ /usr/local/ruby-1.8.5-preview1/bin/ruby -rsocket -ve '
>>> u1 = UDPSocket.new
>>> u2 = UDPSocket.new
>>> u1.bind("127.0.0.1", 0)
>>> u2.send("a", 0, u1.getsockname)
>>> p u1.recv(10)
>>> '
>>> ruby 1.8.5 (2006-06-22) [i386-cygwin]
>>> "a"
>>>
>>> $ /usr/local/ruby-1.8.5-preview1/bin/ruby -rsocket -ve '
>>> u1 = UDPSocket.new
>>> u2 = UDPSocket.new
>>> u1.bind("", 0)
>>> u2.send("a", 0, u1.getsockname)
>>> p u1.recv(10)
>>> '
>>> ruby 1.8.5 (2006-06-22) [i386-cygwin]
>>> -e:5:in `send': Cannot assign requested address - send(2)
>>> (Errno::EADDRNOTAVAIL)
>>>
>>> from -e:5
>>>
>>>> In article <449D66EC.8050405@cyanet.jp>,
>>>> info@cyanet.jp writes:
>>>>
>>>>> bind するアドレスを 127.0.0.1 にすると cygwin でも戻ってきますが、結果が
>>>>> 違いますね。
>>>>
>>>>> u2.send("127.0.0.1", 0, u1.getsockname)
>>>>
>>>> 送るデータが "127.0.0.1" になってますが、ここが "" だとどう
>>>> でしょう。