#!/opt/bin/perl

if ($ARGV[0] eq "console3") {
  gencf(2,"slinky");
  gencf(3,"device3");
  gencf(4,"device4");
  gencf(5,"device5");
  gencf(6,"device6");
  termcf(24,"console");
  termcf(25,"console");  
  termcf(26,"console");  
  termcf(27,"console");  
  termcf(28,"console");  
  termcf(29,"console");    
}
if ($ARGV[0] eq "console2") {
  termcf(0,"console");
  gencf(1,"device");
  gencf(2,"solar");
  gencf(3,"alpha");
  gencf(4,"apollo");
  for (5..29) {
       gencf($_,"device$_");
  }
}

if ($ARGV[0] eq "ts-pi") {
  gencf(1,"monolith");
  gencf(3,"device");
  gencf(4,"switch");
  gencf(5,"pulsar");
  gencf(7,"t3csu");
  gencf(8,"europa");
  gencf(9,"falcon");
  gencf(10,"t1csu");
  gencf(12,"device12");
  gencf(14,"device");
  gencf(16,"ascend");
  
  gencf(13,"apc");
  system ("cat masterswitch.console");
}

print "save all\n";   

sub termcf {
  ($num,$host) = @_;
print <<EOF;
set s$num login
set s$num speed 9600
set s$num data 8
set s$num modem none
set s$num modem off
set s$num rts/cts on
set s$num xon/xoff off
set s$num extended on
set s$num parity strip
set s$num message $host
save s$num
reset s$num
EOF
}



sub gencf {
  ($num,$host) = @_;
$netport=10000+$num;
print <<EOF;
set s$num device /dev/network
set s$num service_device telnet $netport
set s$num speed 9600
set s$num modem none
set s$num modem off
set s$num rts/cts on
set s$num xon/xoff off
set s$num extended on
set s$num parity strip
set s$num message $host
save s$num
reset s$num
add user $host
set user $host service telnet $netport
set user $host password PASSWORD
EOF
}
