Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

108 lines
4.4 KiB

## Command line defined variables.
## Command line defined parameters.
use frsobjsup;
package main;
my ($__HashRef, $__k, $__v);
my (%CMD_VARS, %CMD_PARS);
&FRSSUP::ProcessCmdLine(\%CMD_VARS, \%CMD_PARS);
my $Usage = "
Specific Usage: perl $0 [cmd options] \> output
Process the erac.mrs configuration script.
Command line options must be prefixed with a dash.
The required input options to this script are:
-DBchID=nnnnn : to provide a value for the Bch ID parameter.
-DHubID=nnnnn : to provide a value for the Hub ID parameter.
";
FRSSUP::CheckForHelp(\%CMD_PARS, \$Usage);
FRSSUP::ShowHelp("ERROR - Required parameter BchID not found.", \$Usage) if (!exists $CMD_VARS{"BchID"});
push @bchID, $CMD_VARS{"BchID"};
FRSSUP::ShowHelp("ERROR - Required parameter HubID not found.", \$Usage) if (!exists $CMD_VARS{"HubID"});
push @hubID, $CMD_VARS{"HubID"};
push @bchTimeZone, 0;
$domain = "na";
sub CREATE_WORK_RS {
my %__args = (@_);
my ($__HashRef, $__k, $__v);
# Restriction: All subroutine argument refs are surrounded by "%"
# notation "->{...}"
$__HashRef = FRS_REPLICASET->New(
UNDER=>$__args{SETTINGSDN}, TYPE=>DFS, ONAME=>$__args{B}->{rep_set_name}
);
&FRSSUP::AddToSet("SET", $__HashRef);
# root path could be changed by adding "/RP="newroot""
# surrounded by angle brackets. So "&FRSSUP::SelectSet(SET)"
$__HashRef = FRS_MEMBER->New(
UNDER=>&FRSSUP::SelectSet(SET)->[0], SERVER=>$__args{HA}, COMPUTER=>$__args{HA}->{COMPUTER}, ONAME=>"ComputerObjectGuid", MAKE_PRIMARY_MEMBER=>TRUE
);
&FRSSUP::AddToSet("MHA", $__HashRef);
$__HashRef = FRS_MEMBER->New(
UNDER=>&FRSSUP::SelectSet(SET)->[0], SERVER=>$__args{B}, COMPUTER=>$__args{B}->{COMPUTER}, ONAME=>"ComputerObjectGuid"
);
&FRSSUP::AddToSet("MB", $__HashRef);
FRS_CONNECTION->New(
TO=>&FRSSUP::SelectSet(MB)->[0], FROM=>&FRSSUP::SelectSet(MHA)->[0], SCHED=>$__args{SC1}, ONAME=>"FROM-".$__args{HA}->{ONAME}."-TO-".$__args{B}->{ONAME}
);
FRS_CONNECTION->New(
TO=>&FRSSUP::SelectSet(MHA)->[0], FROM=>&FRSSUP::SelectSet(MB)->[0], SCHED=>$__args{SC1}, ONAME=>"FROM-".$__args{B}->{ONAME}."-TO-".$__args{HA}->{ONAME}
);
&FRSSUP::DeleteSet("SET");
&FRSSUP::DeleteSet("MHA");
&FRSSUP::DeleteSet("MB");
} # FRS_END_SUB
for ($ib=0; $ib<scalar(@bchID); $ib++) {
# The branch name ($bchName) is a concatenation (use of "."
# The hub root path uses the branch name (no "."
$bchName = $bchID[$ib] . "-I01";
$bchNt4Acct = "$domain\\$bchName\$";
$hubName = "STL-FSNA-I" . $hubID[$ib];
$hubRootPath = "C:\\BRANCHES\\$bchName";
$hubNt4Acct = "$domain\\$hubName\$";
$__HashRef = FRS_SERVER->New(
RP=>$hubRootPath, SP=>"C:\\FRS-STAGING", COMPUTER=>$hubNt4Acct, ONAME=>$hubName, DNS_NAME=>"$hubName.$domain.erac.com"
);
&FRSSUP::AddToSet("HUB", $__HashRef);
$__HashRef = FRS_SERVER->New(
RP=>"D:\\USERS", SP=>"C:\\FRS-STAGING", COMPUTER=>$bchNt4Acct, ONAME=>$bchName, time_zone=>$bchTimeZone[$ib], DNS_NAME=>"$bchName.$domain.erac.com", rep_set_name=>"dfsroot|$bchName"
);
&FRSSUP::AddToSet("BCH", $__HashRef);
}
$__HashRef = FRS_SCHEDULE->New(
REPL_INTERVAL=>24, REPL_DURATION=>"2:00", TIME_ZONE=>"-6:00", REPL_OFFSET=>"18:00", STAGGER=>"0:15", METHOD=>1, NAME=>'Primary Sched', DISABLE=>"su:05:00-su:18:00,mo:05:00-mo:18:00,tu:05:00-tu:18:00,we:05:00-we:18:00,th:05:00-th:18:00,fr:05:00-fr:18:00,sa:05:00-sa:18:00"
);
&FRSSUP::AddToSet("PRIMARY_SCH", $__HashRef);
$__HashRef = FRS_SCHEDULE->New(
OVERRIDE=>"su:00-sa:23:45", METHOD=>2
);
&FRSSUP::AddToSet("ON_SCHED", $__HashRef);
$__HashRef = FRS_SETTINGS->New(
DN=>"cn=dfs volumes,cn=file replication service,cn=system,dc=na,dc=erac,dc=com", ONAME=>"cn=dfsroot"
);
&FRSSUP::AddToSet("SETTINGS", $__HashRef);
for ($ib=0; $ib<scalar(@bchID); $ib++) {
# a single item from the "HUB"
&CREATE_WORK_RS (
HA=>&FRSSUP::SelectSet(HUB)->[$ib], B=>&FRSSUP::SelectSet(BCH)->[$ib], SC1=>&FRSSUP::SelectSet(ON_SCHED)->[0], SETTINGSDN=>&FRSSUP::SelectSet(SETTINGS)->[0] );
FRS_SCHEDULE::FRS_STAGGER(
SCHED=>&FRSSUP::SelectSet(PRIMARY_SCH)->[0] );
}
__END__