Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 7 additions & 3 deletions bin/morse
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
#!/usr/local/bin/perl -w
#!/usr/local/bin/perl

use warnings;
use strict;
use File::Basename;

my ($VERSION) = '1.2';

Expand All @@ -14,15 +16,16 @@ END {
# Print a usuage message on a unknown option.
# Requires my patch to Getopt::Std of 25 Feb 1999.
$SIG {__WARN__} = sub {

if (substr ($_ [0], 0, 14) eq "Unknown option") {die "Usage"};
require File::Basename;
$0 = File::Basename::basename ($0);
$warnings = 1;
warn "$0: @_";

};

$SIG {__DIE__} = sub {
require File::Basename;

$0 = File::Basename::basename ($0);
if (substr ($_ [0], 0, 5) eq "Usage") {
die <<EOF;
Expand All @@ -31,6 +34,7 @@ $0 [files ...]
EOF
}
die "$0: @_";

};

if (@ARGV && $ARGV [0] =~ /^-(?=.)/ && ! -f $ARGV [0]) {
Expand Down
55 changes: 30 additions & 25 deletions bin/ping
Original file line number Diff line number Diff line change
@@ -1,41 +1,46 @@
#!/usr/local/bin/perl -w
#!/usr/local/bin/perl

use warnings;
use strict;
use Getopt::Std;
use Socket;
use Net::Ping;

my %opt;
getopts('nI:',\%opt);
die "Usage: $0 host [timeout]\n" unless @ARGV;

my $host = shift;
my $timeout = (@ARGV) ? shift : 20;
my $a = gethostbyname($host);
if (defined $a)
{
if ($opt{'n'})
{
my $name = inet_ntoa($a);
$host = $name if (defined $name);
}
else
{
my $name = gethostbyaddr($a,PF_INET);
$host = $name if (defined $name);
}
my $handle = Net::Ping->new($> ? 'udp' : 'icmp', $timeout);

if ($handle->ping($host))
{
warn "$host is alive\n";
if ( $a ) {

if ( $opt{'n'} ) {

my $name = inet_ntoa($a);
$host = $name if ($name);

} else {

my $name = gethostbyaddr($a,PF_INET);
$host = $name if ($name);
}
else
{
die "No answer from $host";

my $handle = Net::Ping->new($> ? 'udp' : 'icmp', $timeout);

if ( $handle->ping($host) ) {

warn "$host is alive\n";

} else {

die "No answer from $host";
}
}
else
{
die "Unknown host $host\n";
}
} else {

die "Unknown host $host\n";
}

__END__

Expand Down