uucp/utils/bootstrap.pl

83 lines
1.4 KiB
Perl
Executable File

#!/usr/bin/perl
#
use warnings;
use strict;
my $nodename = $ARGV[0];
sub getNodes {
my $nodelist = "../nodelist";
open(my $data, '<', $nodelist);
print("Generating files\n");
while (my $line = <$data>) {
chomp $line;
my @fields = split(",", $line);
my $nodeName = $fields[0];
my $nodeAddress = $fields[1];
generatePort($nodeName,$nodeAddress);
generateSys($nodeName);
print("System ".$nodeName." added successfully\n");
}
print("UUCP bootstrapping complete. Please copy sys and port configuration files to /etc/uucp\n");
}
sub generatePort {
my $currentNode = shift;
my $nodeAddress = shift;
$currentNode =~ s/^([a-z])/\U$1/;
my $template = qq{
port $currentNode
type pipe
command /usr/bin/ssh -a -x -q -i /var/spool/uucp/.ssh/id_rsa -l uucp $nodeAddress
reliable true
protocol etyig
};
my $portFile = "port";
open(FH, '>>', $portFile);
print FH $template;
}
sub generateSys {
my $nodeName = shift;
my $template = qq{
system $nodeName
call-login *
call-password *
local-send /
local-receive /var/spool/uucppublic
remote-send /
remote-receive /var/spool/uucppublic
time any
forward ANY
chat \"\" \\d\\d\\r\\c login: \\d\\L word: \\P
chat-timeout 60
protocol t
port Center
};
my $sysFile = "sys";
open(FH, '>>', $sysFile);
print FH $template;
};
sub generatePasswd {
}
sub generateConfig {
}
getNodes()