document solution
[dell-switch] / dell-switch.pl
index efff4ba..e3c3b0d 100755 (executable)
@@ -17,11 +17,12 @@ require 'config.pl';
 #$Net::OpenSSH::debug = ~0;
 
 my $ip = shift @ARGV || die "usage: $0 IP command[ command ...]\n";
+$ip = $1 if `host $ip` =~ m/has address (\S+)/;
 my @commands = @ARGV;
 @commands = <DATA> unless @commands;
 
 warn "\n## ssh $ip\n";
-my $ssh = Net::OpenSSH->new($ip, user => $login, passwd => $passwd);
+my $ssh = Net::OpenSSH->new($ip, user => $login, passwd => $passwd, default_ssh_opts => [-o => "StrictHostKeyChecking=no"]);
 my ($pty ,$pid) = $ssh->open2pty();
 if ( ! $pty ) {
        warn "ERROR: can't connect to $ip, skipping";
@@ -32,12 +33,12 @@ my $buff;
 
 sub send_pty {
        my $string = shift;
-       sleep 0.1; # we really need to wait for slow PowerConnect 5324
+       sleep 0.05; # we really need to wait for slow PowerConnect 5324
        foreach (split //, $string) {
                print STDERR "[$_]" if $debug;
                syswrite $pty, $_;
                #$pty->flush;
-               sleep 0.05;
+               sleep 0.01;
 
                sysread $pty, my $echo, 1;
                print STDERR $echo;