Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

[REBOL] Re: Can I Ping in REBOL?

From: joel:neely:fedex at: 17-Apr-2001 2:47

Perhaps all is not gloomy... Geraint Jones wrote:
> 17/04/01 13:56:29, Mat Bettinson <[mat--eurogamer--net]> wrote: > > >GJ> Now to the problem I have: I am a Computer Technician for a > >GJ> college in the UK and the Network Administrator here wants to > >GJ> write a CGI Ping tool. > > > >No. RT hath decreed that there is no use for ICMP in Rebol. So we've > >had to use other languages for that task. > > > >GJ> will another language do it? > > > >Certainly. > > Thanks for the response, but since Perl can't use ICMP without being > logged-in as the root user and it won't work properly with other > protocols, which CGI language can we use to ping our own server > periodically where security is an issue? Or is it possible to code > our own ICMP functions in REBOL or Perl, and if so, how ... >
What's wrong with ping? Is there some local security rule? Can you run ping from the command line under the same account that the web server runs as? If so, I submit the following:
> cat ping.pl.cgi
#!/usr/local/bin/perl -w use strict; my $HOSTNAME = "x.y.z.com"; # name changed to protect my job ;-) open (PING, "ping -q -c 5 $HOSTNAME |"); my @results = <PING>; close (PING); print <<PAGE; <html> <head> <title>Ping results for $HOSTNAME</title> </head> <body> <h1>Ping results for $HOSTNAME</h1> <pre>@results</pre> </body> </html> PAGE exit (0); which I can run to get the following output:
> ./ping.pl.cgi
<html> <head> <title>Ping results for x.y.z.com</title> </head> <body> <h1>Ping results for x.y.z.com</h1> <pre>PING x.y.z.com (300.301.302.303) from 300.301.302.303 : 56(84) bytes of data. --- x.y.z.com ping statistics --- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max = 80.1/97.7/110.1 ms </pre> </body> </html> (which is actual output, except for the mangling of host name and IP addresses). Translating the above into REBOL "is left as an exercise for the reader"... ;-) -jn-