version 1.17, 2003/10/28 11:28:35
|
version 1.19, 2003/11/03 10:18:13
|
Line 71 use LondConnection;
|
Line 71 use LondConnection;
|
my %perlvar; # Perl variable defs from apache config. |
my %perlvar; # Perl variable defs from apache config. |
my %hostshash; # Host table as a host indexed hash. |
my %hostshash; # Host table as a host indexed hash. |
|
|
|
my $MyHost=""; # Host name to use as me. |
|
my $ForeignHostTab=""; # Name of foreign hosts table. |
|
|
# |
# |
# prints out utility's command usage info. |
# prints out utility's command usage info. |
# |
# |
sub Usage { |
sub Usage { |
print "Usage:"; |
print "Usage:"; |
print <<USAGE; |
print <<USAGE; |
lonManage --push=<tablename> newfile [host] |
lonManage [--myname=host --hosts=table] --push=<tablename> newfile [host] |
Push <tablename> to the lonTabs directory. Note that |
Push <tablename> to the lonTabs directory. Note that |
<tablename> must be one of: |
<tablename> must be one of: |
host (hosts.tab) |
host (hosts.tab) |
domain (domain.tab) |
domain (domain.tab) |
|
|
lonManage --reinit=lonc [host] |
lonManage [--myname=host --hosts=table] --reinit=lonc [host] |
Causes lonc in the remote system to reread hosts.tab and |
Causes lonc in the remote system to reread hosts.tab and |
adjust the set of clients that are being maintained to match |
adjust the set of clients that are being maintained to match |
the new file. |
the new file. |
|
|
|
|
lonManage --reinit=lond [host] |
lonManage [--myname=host --hosts=table] --reinit=lond [host] |
Causes lond in the remote system to reread the hosts.tab file |
Causes lond in the remote system to reread the hosts.tab file |
and adjust the set of servers to match changes in that file. |
and adjust the set of servers to match changes in that file. |
|
|
Line 99 sub Usage {
|
Line 102 sub Usage {
|
If [host] is omitted, all hosts in the hosts.tab file are iterated |
If [host] is omitted, all hosts in the hosts.tab file are iterated |
over. |
over. |
|
|
|
For all of the above syntaxes if --myname=host and --hosts=table are |
|
supplied (both must be present), the utility runs in standalone mode |
|
presenting itself to the world as 'host' and using the hosts.tab file |
|
specified in the --hosts switch. |
USAGE |
USAGE |
|
|
|
|
Line 150 sub subreply {
|
Line 157 sub subreply {
|
# returns an empty list if the parse fails. |
# returns an empty list if the parse fails. |
# |
# |
|
|
|
|
sub ParseArgs { |
sub ParseArgs { |
my $pushing = ''; |
my $pushing = ''; |
my $reinitting = ''; |
my $reinitting = ''; |
|
|
if(!GetOptions('push=s' => \$pushing, |
if(!GetOptions('push=s' => \$pushing, |
'reinit=s' => \$reinitting)) { |
'reinit=s' => \$reinitting, |
|
'myname=s' => \$MyHost, |
|
'hosts=s' => \$ForeignHostTab)) { |
|
return (); |
|
} |
|
# The --myname and --hosts switch must have values and |
|
# most both appear if either appears: |
|
|
|
if(($MyHost ne "") && ($ForeignHostTab eq "")) { |
|
return (); |
|
} |
|
if(($ForeignHostTab ne "") && ($MyHost eq "")) { |
return (); |
return (); |
} |
} |
|
|
Line 208 sub ParseArgs {
|
Line 227 sub ParseArgs {
|
return @result; |
return @result; |
} |
} |
# |
# |
# Read the loncapa configuration stuff. |
# Read the loncapa configuration stuff. If ForeignHostTab is empty, |
|
# assume we are part of a loncapa cluster and read the hosts.tab |
|
# file from the config directory. Otherwise, ForeignHossTab |
|
# is the name of an alternate configuration file to read in |
|
# standalone mode. |
# |
# |
sub ReadConfig { |
sub ReadConfig { |
my $perlvarref = LondConnection::read_conf('loncapa.conf'); |
|
%perlvar = %{$perlvarref}; |
if($ForeignHostTab eq "") { |
my $hoststab = LondConnection::read_hosts( |
my $perlvarref = LondConnection::read_conf('loncapa.conf'); |
"$perlvar{'lonTabDir'}/hosts.tab"); |
%perlvar = %{$perlvarref}; |
%hostshash = %{$hoststab}; |
my $hoststab = LondConnection::read_hosts( |
|
"$perlvar{'lonTabDir'}/hosts.tab"); |
|
%hostshash = %{$hoststab}; |
|
} else { |
|
my $hoststab = LondConnection::read_hosts($ForeignHostTab); |
|
%hostshash = %{$hoststab}; |
|
$perlvar{londPort} = 5663; |
|
$perlvar{lonSockDir} = "/home/httpd/sockets"; |
|
} |
|
|
} |
} |
# |
# |
Line 369 sub ReinitProcess {
|
Line 400 sub ReinitProcess {
|
} |
} |
#--------------------------- Entry point: -------------------------- |
#--------------------------- Entry point: -------------------------- |
|
|
ReadConfig; # Read the configuration info (incl.hosts). |
|
|
|
|
|
# Parse the parameters |
# Parse the parameters |
Line 389 if ($EUID != 0) {
|
Line 419 if ($EUID != 0) {
|
die "ENOPRIV - No privilege for requested operation" |
die "ENOPRIV - No privilege for requested operation" |
} |
} |
|
|
|
# |
|
# Read the configuration file. |
|
# |
|
|
|
ReadConfig; # Read the configuration info (incl.hosts). |
|
|
# Based on the operation requested invoke the appropriate function: |
# Based on the operation requested invoke the appropriate function: |
|
|