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 fails.

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

require ‘rubygems’
require ‘net/ping’
include Net

hostlist = “”

puts “alive”
puts “down”

Here’s the error message:

D:\Documents and Settings\220022671.USERSAPPLGE>ruby icmpping.rb
[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
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

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.


Kevin Anderson