Forum: Ruby net-smtp timeout error

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Daniel B. (Guest)
on 2009-01-26 18:27
(Received via mailing list)
Hi,

Ruby 1.8.6-p114
RHEL 3

I've got two RHEL3 boxes, alpha and beta. On the alpha box, the
following script works fine. On the beta box I get a timeout error
with the same script. What's happening?

require 'net/smtp'

host    = 'mailhost.foo.com'
port    = 25
to      = 'removed_email_address@domain.invalid'
from    = 'removed_email_address@domain.invalid'
subject = 'test'
body    = 'hello world'

Net::SMTP.start(host, port, host){ |smtp|
   smtp.open_message_stream(from, to){ |stream|
      stream.puts "From: #{from}"
      stream.puts "To: " + to.to_a.join(', ')
      stream.puts "Subject: #{subject}"
      stream.puts
      stream.puts body
   }
}

Result:

/usr/local/lib/ruby/1.8/timeout.rb:54:in `new': execution expired
(Timeout::Error)
        from /usr/local/lib/ruby/1.8/net/protocol.rb:206:in `old_open'
        from /usr/local/lib/ruby/1.8/timeout.rb:56:in `timeout'
        from /usr/local/lib/ruby/1.8/timeout.rb:76:in `timeout'
        from /usr/local/lib/ruby/1.8/net/protocol.rb:206:in `old_open'
        from /usr/local/lib/ruby/1.8/net/smtp.rb:393:in `do_start'
        from /usr/local/lib/ruby/1.8/net/smtp.rb:378:in `start'
        from /usr/local/lib/ruby/1.8/net/smtp.rb:316:in `start'
        from smtp_test.rb:12

I did validate that the /etc/resolv.conf and /etc/protocols files were
the same on both boxes.

This some sort of sendmail config issue? If so, any ideas what it
might be?

Regards,

Dan
Thibault (Guest)
on 2009-01-26 19:21
(Received via mailing list)
Hello,

On Mon, 26 Jan 2009 11:25:14 -0500, Daniel B. wrote:
> I've got two RHEL3 boxes, alpha and beta. On the alpha box, the
> following script works fine. On the beta box I get a timeout error
> with the same script. What's happening?

  I think you did a check without your script like :

nc mailhost.foo.com 25
telnet mailhost.foo.com 25

  If not I suggest you do so in order to check if your problem really
comes from your script, or from a firewall, routing issue…

> I did validate that the /etc/resolv.conf and /etc/protocols files were
> the same on both boxes.

  Maybe you could also check with tcpdump to see if packets are
sent/received as attended.

> This some sort of sendmail config issue? If so, any ideas what it
> might be?

  I don't think so, since you are using SMTP you're bypassing your local
MTA.
Daniel B. (Guest)
on 2009-01-27 05:32
(Received via mailing list)
Thibault wrote:
> telnet mailhost.foo.com 25
>> This some sort of sendmail config issue? If so, any ideas what it
>> might be?
>
>   I don't think so, since you are using SMTP you're bypassing your local
> MTA.

It turns out there was a bad, hard coded mailhost value in the
/etc/hosts file on the beta box. Odd.

Anyway, thanks for the reply and the suggestions.

Regards,

Dan
This topic is locked and can not be replied to.