わたなべです. Minero Aoki <aamine / dp.u-netsurf.ne.jp> writes: : In Mail "[ruby-list:12197] Re: mailclient and inetclient" : watanabe / os.rim.or.jp wrote: しまった. mail address が間違ってた. 直さないと. :そうでないと「1kbyteごとのtimeout」ができないんです。 そうなのかなあ? ちなみに自作ではこんな感じで処理してます. 遅いのは socket が unbuffered なので 1 バイトずつ read して しまうからってのもあるので豪快に sysread. BUFFER_SIZE = 8192 EOL = "\015\012" TERMINATOR = EOL + "." + EOL TSIZE = TERMINATOR.size TIMER = 40 def read_until_dot data = '' catch(:break) do loop do timeout(TIMER) do data << @sock.sysread(BUFFER_SIZE) if data[-TSIZE, TSIZE] == TERMINATOR data[-TSIZE + EOL.size .. -1] = "" throw :break end end end end data end :> cygwin で確認するために qpopper を移植してしまった. : :すごいパワーですね。 2, 3 行いじって make しただけなのでパワーは必要なかったです. -- わたなべひろふみ