in reply to icmp socket error

hi

Try this and revert back to me..
#!/usr/bin/perl use strict; # important pragma use warnings; # another important pragma my @hostname; @hostname = ('any_near_by_machine'); use Net::Ping; my $p = Net::Ping->new("icmp") || die "Error in creating a new ping ob +ject" ; my $temp=$p->ping($hostname[0],3)||die "Error when i ping"; if ($temp) { print "Perfect"; } else { print "Imperfect"; }


Thanks
SasiKumar

Replies are listed 'Best First'.
Re^2: icmp socket error
by Anonymous Monk on Feb 10, 2005 at 07:15 UTC
    this is the error i get :Error when i ping @ line 14.... when i run ur code ..... ani ways .. i hav installed 5.8.4 now ... n i made some changes in the previous code ....i hav added print statements .... now i do get the output in the from of the added print statements ... but it still does not adds the relavent data into my access db ..... thanks AnooP
      I am having a similar problem under Windows XP and Perl 5.8.6:
      C:\>perl -de 1 Loading DB routines from perl5db.pl version 1.28 Editor support available. Enter h or `h h' for help, or `perldoc perldebug' for more help. main::(-e:1): 1 DB<1> use Net::Ping; DB<2> $tcp = Net::Ping->new('tcp'); DB<3> print +($tcp->ping('4.2.2.2') ? "Up\n" : "Down\n"); Up DB<4> $icmp = Net::Ping->new('icmp'); icmp socket error - at (eval 11)[C:/Perl/lib/perl5db.pl:628] line 2 DB<5> print "$]\n"; 5.008006 DB<6> q

      The code in Ping.pm getting the error is:

      socket($self->{"fh"}, PF_INET, SOCK_RAW, $self->{"proto_num"}) || croak("icmp socket error - $!");

      Raw sockets can only be opened by those running with 'root' permission (easily verified on my Linux box). However, what's the equivalent under Windows? I have an alternate id that's a full administrator, but it fairs no better. The maddening thing is that this used to work for me, but with my brand-new laptop with WinXP - it's broken.

      Does anyone have an idea how to allow a normal Windows user to open a raw socket so that icmp pings can work?

      TIA

      GreyGeek