aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ping.rb
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-17 21:05:25 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-17 21:05:25 +0000
commit97591e82d9ba3b7204110302b52540007ff081a5 (patch)
tree9c425fe8dd74187b8d420eb8b5d031e5edb70487 /lib/ping.rb
parent51b031093069dd4a89e25b6057f1eca8c0c7e24e (diff)
downloadruby-97591e82d9ba3b7204110302b52540007ff081a5.tar.gz
* lib/ping.rb, lib/readbytes.rb: removed
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/ping.rb')
-rw-r--r--lib/ping.rb64
1 files changed, 0 insertions, 64 deletions
diff --git a/lib/ping.rb b/lib/ping.rb
deleted file mode 100644
index c2966b619c..0000000000
--- a/lib/ping.rb
+++ /dev/null
@@ -1,64 +0,0 @@
-#
-# = ping.rb: Check a host for upness
-#
-# Author:: Yukihiro Matsumoto
-# Documentation:: Konrad Meyer
-#
-# Performs the function of the basic network testing tool, ping.
-# See: Ping.
-#
-
-require 'timeout'
-require "socket"
-
-#
-# Ping contains routines to test for the reachability of remote hosts.
-# Currently the only routine implemented is pingecho().
-#
-# Ping.pingecho uses a TCP echo (not an ICMP echo) to determine if the
-# remote host is reachable. This is usually adequate to tell that a remote
-# host is available to telnet, ftp, or ssh to.
-#
-# Warning: Ping.pingecho may block for a long time if DNS resolution is
-# slow. Requiring 'resolv-replace' allows non-blocking name resolution.
-#
-# Usage:
-#
-# require 'ping'
-#
-# puts "'jimmy' is alive and kicking" if Ping.pingecho('jimmy', 10)
-#
-module Ping
-
- #
- # Return true if we can open a connection to the hostname or IP address
- # +host+ on port +service+ (which defaults to the "echo" port) waiting up
- # to +timeout+ seconds.
- #
- # Example:
- #
- # require 'ping'
- #
- # Ping.pingecho "google.com", 10, 80
- #
- def pingecho(host, timeout=5, service="echo")
- begin
- timeout(timeout) do
- s = TCPSocket.new(host, service)
- s.close
- end
- rescue Errno::ECONNREFUSED
- return true
- rescue Timeout::Error, StandardError
- return false
- end
- return true
- end
- module_function :pingecho
-end
-
-if $0 == __FILE__
- host = ARGV[0]
- host ||= "localhost"
- printf("%s alive? - %s\n", host, Ping::pingecho(host, 5))
-end