Net-Ping ICMP issues (Windows)

Hello all -

I am running into a curious issue with Net-Ping on Windows (XP Pro SP2
with administrator privileges). Attempting
Net::Ping::ICMP.new(host).ping fails.

Here's the code (which executes flawlessly under OS X 10.5 using sudo):

···

========================

require 'rubygems'
require 'net/ping'
include Net

hostlist = "192.168.1.1"

if Net::Ping::ICMP.new(hostlist).ping
  puts "alive"
else
  puts "down"
end

Here's the error message:

D:\Documents and Settings\220022671.USERSAPPLGE>ruby icmpping.rb
c:/ruby/lib/ruby/gems/1.8/gems/net-ping-1.2.3/lib/net/ping/icmp.rb:65:
[BUG] rb_
sys_fail(socket(2)) - errno == 0
ruby 1.8.6 (2007-09-24) [i386-mswin32]

This application has requested the Runtime to terminate it in an unusual
way.
Please contact the application's support team for more information.

D:\Documents and Settings\220022671.USERSAPPLGE>

Here are my currently installed Gems:

D:\Documents and Settings\220022671.USERSAPPLGE>gem list --local

*** LOCAL GEMS ***

fxri (0.3.6)
    Graphical interface to the RI documentation, with search engine.

fxruby (1.6.12)
    FXRuby is the Ruby binding to the FOX GUI toolkit.

hoe (1.8.3)
    Hoe is a simple rake/rubygems helper for project Rakefiles

hpricot (0.6)
    a swift, liberal HTML parser with a fantastic library

log4r (1.0.5)
    Log4r is a comprehensive and flexible logging library for Ruby.

net-ping (1.2.3)
    A ping interface for Ruby.

rake (0.8.3, 0.7.3)
    Ruby based make-like utility.

rubyforge (1.0.2)
    A script which automates a limited set of rubyforge operations

sources (0.0.1)
    This package provides download sources for remote gem installation

test-unit (2.0.2)
    Test::Unit 2.x - Improved version of Test::Unit bundled in Ruby
    1.8.x

win32-api (1.3.0, 1.0.4)
    A superior replacement for Win32API

win32-clipboard (0.4.3)
    A package for interacting with the Windows clipboard

win32-dir (0.3.2)
    Extra constants and methods for the Dir class on Windows.

win32-eventlog (0.4.6)
    Interface for the MS Windows Event Log.

win32-file (0.5.4)
    Extra or redefined methods for the File class on Windows.

win32-file-stat (1.2.7)
    A File::Stat class tailored to MS Windows

win32-open3 (0.2.7)
    Provides an Open3.popen3 implementation for MS Windows

win32-process (0.5.3)
    Adds fork, wait, wait2, waitpid, waitpid2 and a special kill method

win32-sapi (0.1.4)
    An interface to the MS SAPI (Sound API) library.

win32-sound (0.4.1)
    A library for playing with sound on MS Windows.

windows-api (0.3.0, 0.2.0)
    An easier way to create methods using Win32API

windows-pr (1.0.1, 0.7.2)
    Windows functions and constants bundled via Win32::API

Seeing as how the application works in OS X and not in Windows it leads
me to think there's an issue with the Ping::ICMP implementation on the
Windows platform specifically. Ping::TCP works perfectly.

Thanks

Kevin Anderson
--
Posted via http://www.ruby-forum.com/.