Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 157388 Details for
Bug 237356
Move DS Admin Code into Admin Server
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
setup - admserv, config ds, server reg.
cvsdiffs (text/plain), 30.21 KB, created by
Rich Megginson
on 2007-06-19 15:58:18 UTC
(
hide
)
Description:
setup - admserv, config ds, server reg.
Filename:
MIME Type:
Creator:
Rich Megginson
Created:
2007-06-19 15:58:18 UTC
Size:
30.21 KB
patch
obsolete
>Index: adminserver/admserv/newinst/src/ASDialogs.pm.in >=================================================================== >RCS file: /cvs/dirsec/adminserver/admserv/newinst/src/ASDialogs.pm.in,v >retrieving revision 1.1 >diff -u -8 -r1.1 ASDialogs.pm.in >--- adminserver/admserv/newinst/src/ASDialogs.pm.in 8 Jun 2007 22:49:18 -0000 1.1 >+++ adminserver/admserv/newinst/src/ASDialogs.pm.in 15 Jun 2007 21:05:16 -0000 >@@ -40,16 +40,38 @@ > > use strict; > > use DialogManager; > use Setup; > use Dialog; > use Util; > >+my $asserveradmin = new Dialog ( >+ $SILENT, # hidden >+ 'none', >+ sub { >+ my $self = shift; >+ my $id = $self->{manager}->{inf}->{admin}->{ServerAdminID} || >+ $self->{manager}->{inf}->{General}->{ConfigDirectoryAdminID}; >+ if (isValidDN($id)) { >+ $id =~ s/^(.*)=.*/$1/; >+ } >+ $self->{manager}->{inf}->{admin}->{ServerAdminID} = $id; >+ my $pwd = $self->{manager}->{inf}->{admin}->{ServerAdminPwd} || >+ $self->{manager}->{inf}->{General}->{ConfigDirectoryAdminPwd}; >+ $self->{manager}->{inf}->{admin}->{ServerAdminPwd} = $pwd; >+ return $id; >+ }, >+ sub { >+ return $DialogManager::NEXT; >+ }, >+ ['none'] >+); >+ > my $asport = new Dialog ( > $TYPICAL, > 'dialog_asport_text', > sub { > my $self = shift; > my $port = $self->{manager}->{inf}->{admin}->{Port}; > if (!defined($port)) { > $port = @admservport@; >@@ -81,17 +103,21 @@ > 'dialog_ashostip_text', > sub { > my $self = shift; > return $self->{manager}->{inf}->{admin}->{ServerIpAddress}; > }, > sub { > my $self = shift; > my $ans = shift; >- $self->{manager}->{inf}->{admin}->{ServerIpAddress} = shift; >+ if ($ans && (length($ans) > 0)) { >+ $self->{manager}->{inf}->{admin}->{ServerIpAddress} = $ans; >+ } elsif (exists($self->{manager}->{inf}->{admin}->{ServerIpAddress})) { >+ delete $self->{manager}->{inf}->{admin}->{ServerIpAddress}; >+ } > return $DialogManager::NEXT; > }, > ['dialog_ashostip_prompt'] > ); > > # must verify that the user or uid specified by the user to run the server as > # is a valid uid > sub verifyUserChoice { >@@ -149,12 +175,12 @@ > my $self = shift; > my $ans = shift; > return verifyUserChoice($self, $ans); > }, > ['dialog_assysuser_prompt'] > ); > > sub getDialogs { >- return ($asport, $ashostip, $assysuser); >+ return ($asserveradmin, $asport, $ashostip, $assysuser); > } > > 1; >Index: adminserver/admserv/newinst/src/admin.inf.in >=================================================================== >RCS file: /cvs/dirsec/adminserver/admserv/newinst/src/admin.inf.in,v >retrieving revision 1.1 >diff -u -8 -r1.1 admin.inf.in >--- adminserver/admserv/newinst/src/admin.inf.in 15 May 2007 00:30:49 -0000 1.1 >+++ adminserver/admserv/newinst/src/admin.inf.in 15 Jun 2007 21:05:16 -0000 >@@ -21,16 +21,17 @@ > # END COPYRIGHT BLOCK > > [General] > Name= Administration Server > > [admin] > Name= @capbrand@ Administration Server > Brand= @capbrand@ >+NormBrand = @brand@ > Vendor=@vendor@ > Version= @PACKAGE_VERSION@ > NickName= admin > BuildNumber= @NQBUILD_NUM@ > # the rest of these are obsolete, but left here for > # compatability with the old setuputil > Compatible= 1.0 > Security= Domestic >Index: adminserver/admserv/newinst/src/register_server.pl.in >=================================================================== >RCS file: /cvs/dirsec/adminserver/admserv/newinst/src/register_server.pl.in,v >retrieving revision 1.1 >diff -u -8 -r1.1 register_server.pl.in >--- adminserver/admserv/newinst/src/register_server.pl.in 13 Jun 2007 17:48:35 -0000 1.1 >+++ adminserver/admserv/newinst/src/register_server.pl.in 15 Jun 2007 21:05:16 -0000 >@@ -1,8 +1,9 @@ >+#!/usr/bin/env perl > # BEGIN COPYRIGHT BLOCK > # This Program is free software; you can redistribute it and/or modify it under > # the terms of the GNU General Public License as published by the Free Software > # Foundation; version 2 of the License. > # > # This Program is distributed in the hope that it will be useful, but WITHOUT > # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS > # FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. >@@ -49,361 +50,25 @@ > # -w <rootdnpw>: configuration server's rootdn password > # -d <default_infdir>: the directory where static .inf files are located > # ("/usr/share/fedora-ds/inf") > # -i <inffile(s)>: dynamic .inf file(s) > # -m <mapfile>: map file name > # <ldiffile> ...: ldif file(s) or template ldif file(s) to be stored in > # the Configuration Directory Server > >+use lib "@perldir@"; >+ > use Getopt::Std; > use Net::Domain qw(hostname); > # PERLDAP modules > use Mozilla::LDAP::Conn; >-use Mozilla::LDAP::Entry; > # Setup Inf module > use Inf; >- >-# process map table >-# [map table sample] >-# fqdn = FullMachineName >-# hostname = `use Sys::Hostname; $returnvalue = hostname();` >-# ds_console_jar ="%normbrand%-ds-%ds_version%.jar" >-# >-# * If the right-hand value is in ` (backquote), the value is eval'ed by perl. >-# The output should be stored in $returnvalue to pass to the internal hash. >-# * If the right-hand value is in " (doublequote), the value is passed as is. >-# * If the right-hand value is not in any quote, the value should be found >-# in either of the setup inf file (static) or the install inf file (dynamic). >-# * Variables surrounded by @ (e.g., @admin_confdir@) are replaced with the >-# system path at the compile time. >-# * The right-hand value can contain variables surrounded by % (e.g., %asid%) >-# which refers the right-hand value (key) of this map file. >-sub process_maptbl >-{ >- ($mapper, @infdata) = @_; >- >- foreach $section (keys %{$mapper}) >- { >- my $thissection = \%{%{$mapper}->{$section}}; >- foreach $key (keys %{$thissection}) >- { >- my $value = $thissection->{$key}; >- if ($value =~ /^\"/) >- { >- $value =~ tr/\"//d; >- $thissection->{$key} = $value; >- } >- elsif ($value =~ /^\`/) >- { >- $value =~ tr/\`//d; >- eval $value; >- $thissection->{$key} = $returnvalue; >- } >- else >- { >- my $infsection; >- foreach my $thisinf (@infdata) >- { >- foreach my $section0 (keys %{$thisinf}) >- { >- $infsection = \%{%{$thisinf}->{$section0}}; >- if ("" ne $infsection->{$value}) >- { >- $thissection->{$key} = $infsection->{$value}; >- goto nextkey; >- } >- } >- } >- if ("" eq $infsection->{$value}) >- { >- print "ERROR: $value not found in the .inf files\n"; >- return NULL; >- } >- } >-nextkey: >- } >- } >- return $mapper; >-} >- >-# delete the subtree starting from the passed entry >-sub delete_all >-{ >- my ($conn, $bentry) = @_; >- my $sentry = $conn->search($bentry->{dn}, >- "subtree", "(objectclass=*)", 0, ("dn")); >- while ($sentry) { >- push @mystack, ($sentry); >- $sentry = $conn->nextEntry(); >- } >- # reverse order >- my $myentry = pop @mystack; >- while ($myentry) { >- $conn->delete($myentry->{dn}); >- $rc = $conn->getErrorCode(); >- if ( $rc ne 0 ) { >- $conn->printError(); >- print "ERROR: unable to delete entry, error code: $rc\n"; >- return 1; >- } >- $myentry = pop @mystack; >- } >- return 0; >-} >- >-@ignorelist = ( >- "modifyTimestamp", >- "createTimestamp", >- "installationTimestamp", >- "creatorsName", >- "modifiersName", >- "numSubordinates" >-); >- >-@speciallist = ( >- "uniqueMember" >-); >- >-sub is_in_array >-{ >- my ($val, $array) = @_; >- foreach my $elem ($array) >- { >- if ( lc($val) eq lc($elem) ) >- { >- return 1; >- } >- } >- return 0; >-} >- >-# compare 2 entries >-# return 0 if they match 100% (exception: @ignorelist). >-# return 1 if they match except @speciallist. >-# return -1 if they do not match. >-sub comp_entries >-{ >- my ($e0, $e1) = @_; >- $rc = 0; >- foreach $akey ( keys %{$e0} ) >- { >- next if ( 1 == is_in_array($akey, @ignorelist) ); >- $aval0 = $e0->{$akey}; >- $aval1 = $e1->{$akey}; >- my $amin; >- my $amax; >- if ( $#aval0 != $#aval1 ) >- { >- if ( 1 == is_in_array($akey, @speciallist) ) >- { >- $rc = 1; >- if ( $#aval0 < $#aval1 ) >- { >- $amin = $#aval0; >- $amax = $#aval1; >- } >- else >- { >- $amin = $#aval1; >- $amax = $#aval0; >- } >- } >- else >- { >- $rc = -1; >- return $rc; >- } >- } >- @sval0 = sort { $a cmp $b } @{$aval0}; >- @sval1 = sort { $a cmp $b } @{$aval1}; >- for ( my $i = 0; $i <= $amin; $i++ ) >- { >- my $isspecial = -1; >- if ( $sval0[$i] ne $sval1[$i] ) >- { >- if ( 0 > $isspecial ) >- { >- $isspecial = is_in_array($akey, @speciallist); >- } >- if ( $isspecial ) >- { >- $rc = 1; >- } >- else >- { >- $rc = -1; >- return $rc; >- } >- } >- } >- } >- return $rc; >-} >- >-# if the entry does not exist on the server, add the entry. >-# otherwise, do nothing >-sub check_and_add_entry >-{ >- my ($conn, $aentry) = @_; >- my $sentry = $conn->search($aentry->{dn}, "base", "(objectclass=*)"); >- do >- { >- my $needtoadd = 1; >- my $needtomod = 0; >- my $rval = -1; >- if ( NULL != $sentry && !$confds_fresh ) >- { >- $rval = comp_entries( $sentry, $aentry ); >- } >- if ( 0 == $rval && !$confds_fresh ) >- { >- # the identical entry exists on the configuration DS. >- # no need to add the entry. >- $needtoadd = 0; >- goto out; >- } >- elsif ( 1 == $rval && !$confds_fresh ) >- { >- $needtoadd = 0; >- $needtomod = 1; >- } >- elsif ( NULL != $sentry && "" ne $sentry->{dn} ) >- { >- # $confds_fresh || $rval == -1 >- # an entry having the same DN exists, but the attributes do not >- # match. remove the entry and the subtree underneath. >- if ( $confds_verbose ) >- { >- print "Deleting an entry dn: $sentry->{dn} ...\n"; >- } >- $rval = delete_all($conn, $sentry); >- if ( 0 != $rval ) >- { >- return 1; >- } >- } >- >- if ( 1 == $needtoadd ) >- { >- $conn->add($aentry); >- my $rc = $conn->getErrorCode(); >- if ( $rc != 0 ) >- { >- print "ERROR: adding an entry $aentry->{dn} failed, error code: $rc\n"; >- print "[entry]\n"; >- $aentry->printLDIF(); >- $conn->close(); >- return 1; >- } >-# if ( $confds_verbose ) >-# { >-# print "Entry $aentry->{dn} is added\n"; >-# } >- } >- elsif ( 1 == $needtomod ) # $sentry exists >- { >- foreach $attr ( @speciallist ) >- { >- foreach $nval ( @{$aentry->{$attr}} ) >- { >- $sentry->addValue( $attr, $nval ); >- } >- } >- $conn->update($sentry); >- my $rc = $conn->getErrorCode(); >- if ( $rc != 0 ) >- { >- print "ERROR: updating an entry $sentry->{dn} failed, error code: $rc\n"; >- print "[entry]\n"; >- $aentry->printLDIF(); >- $conn->close(); >- return 1; >- } >- } >- if ( NULL != $sentry ) >- { >- $sentry = $conn->nextEntry(); # supposed to have no more entries >- } >- } until ( NULL == $sentry ); >-out: >- return 0; >-} >- >-# register server info from the template ldif files >-sub register_serverinfo >-{ >- my ($conn, $mapper, @ldiffiles) = @_; >- my $thissection = \%{%{$mapper}->{""}}; >- >- foreach my $ldiffile (@ldiffiles) >- { >- open(MYLDIF, "< $ldiffile") or die "Can't open $ldiffile : $!"; >- if ( $confds_verbose ) >- { >- print "Processing $ldiffile ...\n"; >- } >- my $entry = NULL; >- while ( my $l = <MYLDIF> ) >- { >- chop $l; >- if ( "$l" eq "" ) >- { >- next if ( NULL == $entry ); >- check_and_add_entry($conn, $entry); >- $entry->DESTROY(); >- $entry = NULL; >- } >- elsif ( "$l" =~ /^dn:/ ) >- { >- $entry = new Mozilla::LDAP::Entry(); >- my ($h, $dn) = split(/: /, $l, 2); >- # Need to repeat to handle nested subst >- my $origdn = $dn; >- while ( $dn =~ /%([A-Za-z_]+)%/ ) >- { >- $dn =~ s{%([A-Za-z_]+)%}{$thissection->{$1} || "SERVER_INFO_NOTFOUND"}ge; >- } >- if ( $dn =~ /SERVER_INFO_NOTFOUND/ ) >- { >- print "ERROR: \"$origdn\" mapped to \"$dn\".\n"; >- print "Make sure that %value% replaced by SERVER_INFO_NOTFOUND exists in $mapfile.\n"; >- return 1; >- } >- $entry->setDN($dn); >- } >- else >- { >- my ($key, $value) = split(/: /, $l, 2); >- # Need to repeat to handle nested subst >- my $origvalue = $value; >- while ( $value =~ /%([A-Za-z_]+)%/ ) >- { >- $value =~ s{%([A-Za-z_]+)%}{$thissection->{$1} || "SERVER_INFO_NOTFOUND"}ge; >- } >- if ( $value =~ /SERVER_INFO_NOTFOUND/ ) >- { >- print "ERROR: \"$origvalue\" mapped to \"$value\"\n"; >- print "Make sure that %value% replaced by SERVER_INFO_NOTFOUND exists in $mapfile.\n"; >- return 1; >- } >- $entry->addValue( $key, "$value" ) >- } >- } >- close(MYLDIF); >- if ( NULL != $entry ) >- { >- check_and_add_entry($conn, $entry); >- $entry->DESTROY(); >- $entry = NULL; >- } >- } >- >- return 0; >-} >+use Util; > > $USAGE = > "$0 [ -Fv ] [ -h <host> ] [ -p <port> ] [ -D <rootdn> ] \ > -w <rootdnpw> [ -d <default_infdir> ] \ > -i <inffile(s)> ... -m <mapfile> <ldiffile> ... > > Description: Store server info stored in the ldiffiles to the Configuration > Directory Server replacing the macros with the defined values >@@ -429,17 +94,17 @@ > exit 1; > } > > $confds_verbose = $opt_v; > $confds_fresh = $opt_F; > $confds_host = $opt_h; > if ( "" eq $confds_host ) > { >- $confds_host = hostname(); >+ $confds_host = hostfqdn(); > } > $confds_port = $opt_p; > if ( "" eq $confds_port ) > { > $confds_port = 389; > } > $confds_rootdn = $opt_D; > if ( "" eq $confds_rootdn ) >@@ -523,19 +188,19 @@ > push(@infdata, ($infdatum)); > $mapper = process_maptbl($mapper, @infdata); > if ( NULL eq $mapper ) > { > print "ERROR: failed to generate mapper\n"; > exit 1; > } > >- # register server info >- my $rc = register_serverinfo($conn, $mapper, @ldiffiles); >- if ( 0 != $rc ) >+ my @ents = getMappedEntries($mapper, \@ldiffiles, \&check_and_add_entry, >+ [$conn, $confds_fresh, $confds_verbose]); >+ if ( @ents ) > { > print "ERROR: failed to register server info\n"; > return 1; > } > > pop @infdata; > # in case handling multiple server instances, > # need to turn it off from the second loop. >Index: adminserver/admserv/newinst/src/setup-ds-admin.pl.in >=================================================================== >RCS file: /cvs/dirsec/adminserver/admserv/newinst/src/setup-ds-admin.pl.in,v >retrieving revision 1.1 >diff -u -8 -r1.1 setup-ds-admin.pl.in >--- adminserver/admserv/newinst/src/setup-ds-admin.pl.in 8 Jun 2007 22:49:18 -0000 1.1 >+++ adminserver/admserv/newinst/src/setup-ds-admin.pl.in 15 Jun 2007 21:05:17 -0000 >@@ -41,57 +41,122 @@ > > use strict; > > use Setup; > use SetupLog; > use Inf; > use Resource; > use DialogManager; >+use AdminUtil; > > my $setup = new Setup; > >+my $res = new Resource("@propertydir@/setup-ds.res", >+ "@propertydir@/setup-ds-admin.res"); >+ >+# see what directory server instances we already have configured >+my @dirservers = $setup->getDirServers(); >+ >+# see if there is already a configds >+my $admConf = AdminUtil::getConf($setup->{configdir}); >+ >+# set defaults >+if ($admConf && %{$admConf}) { >+ $setup->{inf}->{General}->{ConfigDirectoryLdapURL} = $admConf->{ldapurl}; >+ $setup->{inf}->{General}->{ConfigDirectoryAdminID} = $admConf->{userdn}; >+ $setup->{inf}->{General}->{AdminDomain} = $admConf->{AdminDomain}; >+ $setup->{inf}->{General}->{SuiteSpotUserID} = $admConf->{SuiteSpotUserID}; >+ $setup->{inf}->{General}->{SuiteSpotGroup} = $admConf->{SuiteSpotGroup}; >+ >+ $setup->{inf}->{admin}->{SysUser} = $admConf->{sysuser}; >+ # read additional config from config DS >+ my $pset = AdminUtil::getPset($admConf); >+ if ($pset && %{$pset}) { >+ $setup->{inf}->{admin}->{Port} = $pset->{"configuration.nsServerPort"}; >+ $setup->{inf}->{admin}->{ServerIpAddress} = $pset->{"configuration.nsServerAddress"}; >+ } >+ my $admpw = AdminUtil::getAdmpw($admConf); >+ if ($admpw && %{$admpw}) { >+ $setup->{inf}->{admin}->{ServerAdminID} = $admpw->{ServerAdminID}; >+ $setup->{inf}->{admin}->{ServerAdminPwd} = $admpw->{ServerAdminPwd}; >+ } >+ >+ # default to using the existing config DS >+ $setup->{inf}->{slapd}->{UseExistingMC} = 1; >+ $setup->{inf}->{slapd}->{SlapdConfigForMC} = 0; >+} >+ > if (!$setup->{silent}) { >- my $res = new Resource("@propertydir@/setup-ds.res", >- "@propertydir@/setup-ds-admin.res"); > my $dialogmgr = new DialogManager($setup, $res, $TYPICAL); > > require SetupDialogs; > require DSDialogs; >+ require ConfigDSDialogs; > require ASDialogs; > > my @dialogs = SetupDialogs->getDialogs(); >+ push @dialogs, ConfigDSDialogs->getDialogs(); > push @dialogs, DSDialogs->getDialogs(); > push @dialogs, ASDialogs->getDialogs(); > >+ my $readytoproceed = new DialogYesNo ( >+ $EXPRESS, >+ 'dialog_readytoproceed_text', >+ 1, >+ sub { >+ my $self = shift; >+ my $ans = shift; >+ my $res = $self->handleResponse($ans); >+ if ($res == $DialogManager::NEXT) { >+ if (!$self->isYes()) { >+ $res = $DialogManager::BACK; >+ } >+ } >+ return $res; >+ }, >+ ['dialog_readytoproceed_prompt'], >+ ); >+ push @dialogs, $readytoproceed; >+ > $dialogmgr->addDialog(@dialogs); > > my $rc = $dialogmgr->run(); > if ($rc) { > $setup->doExit(); > } > >-# these values are currently missing - have no UI support - ServerAdminID and Pwd >-# are supposed to be derived from ConfigDirectoryAdminID and Pwd >-# $setup->{inf}->{admin}->{ServerAdminID} = "admin"; >-# $setup->{inf}->{admin}->{ServerAdminPwd} = "admin"; >-# $setup->{inf}->{General}->{ConfigDirectoryLdapURL} = "ldap://localhost.localdomain:1100/o=NetscapeRoot"; >-# $setup->{inf}->{General}->{ConfigDirectoryAdminID} = "admin"; >-# $setup->{inf}->{General}->{ConfigDirectoryAdminPwd} = "admin"; >-# $setup->{inf}->{General}->{AdminDomain} = "localdomain"; >+ print "\n\n"; >+} > >- $setup->{inf}->write(); >+if (!$setup->{inf}->{slapd}->{UseExistingMC} or >+ ($setup->{inf}->{slapd}->{SlapdConfigForMC} =~ /^yes/i)) { >+ if (!$setup->{inf}->{General}->{ConfigDirectoryLdapURL}) { >+ $setup->{inf}->{General}->{ConfigDirectoryLdapURL} = >+ "ldap://" . $setup->{inf}->{General}->{FullMachineName} . >+ ":" . $setup->{inf}->{slapd}->{ServerPort} . >+ "/o=NetscapeRoot"; >+ } > } > >+$setup->{inf}->write(); >+ > # create a directory server instance > if (system("@bindir@/ds_newinst.pl $setup->{inffile}")) { > print STDERR "Failed to create directory server instance\n"; > $setup->{log}->logMessage($FATAL, "Setup", "Failed to create directory server instance"); > } > >+# setup directory server instance to be the configuration DS >+if ($setup->{inf}->{slapd}->{SlapdConfigForMC} =~ /yes/i) { >+ createConfigDS($setup->{inf}, $res); >+} >+ >+# register ds instances with config DS >+ > # configure the admin server instance > if (system("@cmdbindir@/ds-admin-update -f $setup->{inffile}")) { > print STDERR "Failed to configure administration server\n"; > $setup->{log}->logMessage($FATAL, "Setup", "Failed to configure administration server"); > } > > END { > if (!$setup->{keep}) { >Index: adminserver/admserv/newinst/src/setup-ds-admin.res.in >=================================================================== >RCS file: /cvs/dirsec/adminserver/admserv/newinst/src/setup-ds-admin.res.in,v >retrieving revision 1.1 >diff -u -8 -r1.1 setup-ds-admin.res.in >--- adminserver/admserv/newinst/src/setup-ds-admin.res.in 8 Jun 2007 22:49:18 -0000 1.1 >+++ adminserver/admserv/newinst/src/setup-ds-admin.res.in 15 Jun 2007 21:05:17 -0000 >@@ -17,8 +17,66 @@ > dialog_ashostip_prompt = IP address > > # ----------- AS sys user Dialog Resource ---------------- > dialog_assysuser_text = The Administration Server program runs as a certain user on your\nsystem. This user must have permission to modify files and directories\nfor your Directory server as well as the Administration server. You\nare strongly encouraged to use a non-privileged (i.e. non-root) user.\n\n > dialog_assysuser_prompt = Run Administration Server as > dialog_assysuser_error = The user '%s' is invalid.\n\n > dialog_assysuser_must_be_same = Since you are not running setup as root, the user must be the same as your userid '%s'.\n\n > dialog_assysuser_root_warning = You are strongly encouraged to use a non-root user for\nthe server uid. If you feel you have made a mistake,\nplease go back to this dialog and enter another user.\n\n >+ >+# ----------- Use Config DS Dialog Resource ---------------- >+dialog_useconfigds_text = Server information is stored in the configuration directory server.\nThis information is used by the console and administration server to\nconfigure and manage your servers. If you have already set up a\nconfiguration directory server, you should register any servers you\nset up or create with the configuration server. To do so, the\nfollowing information about the configuration server is required: the\nfully qualified host name of the form\n<hostname>.<domainname>(e.g. hostname.example.com), the port number\n(default 389), the suffix, the DN and password of a user having\npermission to write the configuration information, usually the\nconfiguration directory administrator, and if you are using security\n(TLS/SSL). If you are using TLS/SSL, specify the TLS/SSL (LDAPS) port\nnumber (default 636) instead of the regular LDAP port number, and\nprovide the CA certificate (in PEM/ASCII format).\n\nIf you do not yet have a configuration directory server, enter 'No' to\nbe prompted to set up one.\n\n >+ >+dialog_useconfigds_prompt = Do you want to register this software with an existing\nconfiguration directory server? >+ >+# ----------- Config DS info Dialog Resource ---------------- >+dialog_configdsinfo_text = Please specify the information about your configuration directory\ >+server. The following information is required:\ >+- host (fully qualified), port (non-secure or secure), suffix,\ >+ protocol (ldap or ldaps) - this information should be provided in the\ >+ form of an LDAP url e.g. for non-secure\ >+ldap://host.example.com:389/o=NetscapeRoot\ >+ or for secure\ >+ldaps://host.example.com:636/o=NetscapeRoot\ >+- admin ID and password\ >+- admin domain\ >+- a CA certificate file may be required if you choose to use ldaps and\ >+ security has not yet been configured - the file must be in PEM/ASCII\ >+ format - specify the absolute path and filename\n\n >+ >+dialog_configdsinfo_url_prompt = Configuration directory server URL >+dialog_configdsinfo_id_prompt = Configuration directory server admin ID >+dialog_configdsinfo_pwd_prompt = Configuration directory server admin password >+dialog_configdsinfo_domain_prompt = Configuration directory server admin domain >+dialog_configdsinfo_ca_prompt = CA certificate filename >+dialog_configdsinfo_ca_error = '%s' is not a valid CA certificate file. Please choose another one.\n\n >+dialog_configdsinfo_nocacert = You chose to use LDAPS but there is no CA certificate or certificate database. Please chose ldap for the protocol or provide a valid CA certificate.\n\n >+dialog_configdsinfo_unreachable = The server '%s' is not reachable. Please make sure it is running and listening, or choose another one.\n\n >+dialog_configdsinfo_tryagain = Please try again, in case you mis-typed something.\n\n >+ >+# ----------- Config DS admin id and password Dialog Resource ---------------- >+dialog_configdsadmin_text = Please enter the administrator ID for the configuration directory\nserver. This is the ID typically used to log in to the console. You\nwill also be prompted for the password.\n\n >+dialog_configdsadmin_prompt = Configuration directory server\nadministrator ID >+dialog_configdsadmin_pw1_prompt = Password >+dialog_configdsadmin_pw2_prompt = Password (again) >+dialog_configdsadmin_error = The input '%s' is not a valid ID. Please choose another one.\n\n >+dialog_configdsadmin_invalid = The password contains invalid characters. Please choose another one.\n\n >+dialog_configdsadmin_nomatch = The passwords do not match. Please try again.\n\n >+ >+ >+# ----------- Config DS admin domain Dialog Resource ---------------- >+dialog_configdsadmindomain_text = The information stored in the configuration directory server can be\nseparated into different Administration Domains. If you are managing\nmultiple software releases at the same time, or managing information\nabout multiple domains, you may use the Administration Domain to keep\nthem separate.\n\nIf you are not using administrative domains, press Enter to select the\ndefault. Otherwise, enter some descriptive, unique name for the\nadministration domain, such as the name of the organization\nresponsible for managing the domain.\n\n >+ >+dialog_configdsadmindomain_prompt = Administration Domain >+dialog_configdsadmindomain_error = The string '%s' is not a valid administration domain. Please choose another one.\n\n >+dialog_configdsadmindomain_notadn = The administration domain must not be a DN. The string '%s' looks like a DN. Please choose another one.\n\n >+ >+# other messages >+configds_open_error = The server '%s' is not reachable. Error: %s\n\n >+configds_finddn_error = Could not find the user '%s' in the server '%s'. Error: %s\n\n >+configds_bindretry_error = You have made too many unsuccessful attempts to authenticate as '%s' to the server '%s'. Please contact the administrator for that server.\n\n >+configds_bind_error = Could not authenticate as user '%s' to server '%s'. Error: %s\n\n >+configds_no_admindomain = Could not find the admin domain '%s' under '%s'. Error: %s\n\n >+ >+dialog_readytoproceed_text = The interactive phase is complete. The script will now set up your\ >+servers. Enter No or go Back if you want to change something.\n\n >+dialog_readytoproceed_prompt = Are you ready to set up your servers? >Index: adminserver/Makefile.am >=================================================================== >RCS file: /cvs/dirsec/adminserver/Makefile.am,v >retrieving revision 1.9 >diff -u -8 -r1.9 Makefile.am >--- adminserver/Makefile.am 15 Jun 2007 17:13:02 -0000 1.9 >+++ adminserver/Makefile.am 15 Jun 2007 21:05:17 -0000 >@@ -125,33 +125,38 @@ > admserv/schema/ldif/01nsroot.ldif.tmpl \ > admserv/schema/ldif/02globalpreferences.ldif.tmpl \ > admserv/schema/ldif/10dsdata.ldif.tmpl \ > admserv/schema/ldif/11dstasks.ldif.tmpl \ > admserv/schema/ldif/20asdata.ldif.tmpl \ > admserv/schema/ldif/21astasks.ldif.tmpl \ > admserv/schema/ldif/22ascommands.ldif.tmpl > >-inf_DATA = admserv/newinst/src/admin.inf admserv/newinst/src/register_param.map admserv/newinst/common/setup.inf >+inf_DATA = admserv/newinst/src/admin.inf \ >+ admserv/newinst/common/setup.inf \ >+ admserv/newinst/src/register_param.map \ >+ admserv/newinst/src/configdsroot.map > > cgibin_PROGRAMS = mergeConfig admpw security ugdsconfig ReadLog start_config_ds \ > config statpingserv viewdata dsconfig monreplication restartsrv \ > statusping viewlog htmladmin sec-activate stopsrv download help \ > ds_start ds_restart ds_shutdown ds_ldif2db ds_db2ldif ds_bak2db \ > ds_db2bak ds_listdb ds_rmdb ds_remove ds_snmpctrl ds_vlvindex ds_addindex > > bin_SCRIPTS = admserv/newinst/src/register_server.pl > cgibin_SCRIPTS = admserv/cgi-src40/Cgi.pm > nodist_cmdbin_SCRIPTS = admserv/cfgstuff/start-ds-admin admserv/cfgstuff/stop-ds-admin admserv/cfgstuff/restart-ds-admin > > cmdbin_SCRIPTS = admserv/newinst/src/setup-ds-admin.pl > > cmdbin_PROGRAMS = ds-admin-config ds-admin-remove ds-admin-update > >-perl_SCRIPTS = admserv/newinst/src/ASDialogs.pm >+perl_SCRIPTS = admserv/newinst/src/ASDialogs.pm \ >+ admserv/newinst/src/AdminUtil.pm \ >+ admserv/newinst/src/ConfigDSDialogs.pm > > libds_admin_serv_la_SOURCES = $(libbase_a_SOURCES) $(libsi18n_a_SOURCES) $(libadmin_a_SOURCES) > > libdsa_a_SOURCES = lib/libdsa/dsalib_conf.c \ > lib/libdsa/dsalib_debug.c \ > lib/libdsa/dsalib_ldif.c \ > lib/libdsa/dsalib_tailf.c \ > lib/libdsa/dsalib_confs.c \ >@@ -399,17 +404,19 @@ > -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \ > -e 's,@brand\@,$(brand),g' \ > -e 's,@capbrand\@,$(capbrand),g' \ > -e 's,@vendor\@,$(vendor),g' \ > -e 's,@helpdir\@,$(helpdir),g' \ > -e 's,@mimemagic\@,$(mimemagic),g' \ > -e 's,@initdir\@,$(initdir),g' \ > -e 's,@shared_lib_suffix\@,$(shared_lib_suffix),g' \ >- -e 's,@perldir\@,$(perldir),g' >+ -e 's,@perldir\@,$(perldir),g' \ >+ -e 's,@infdir\@,$(infdir),g' \ >+ -e 's,@ldifdir\@,$(ldifdir),g' > > # because the source may be either httpd.conf.in or httpd-2.2.conf.in > admserv/cfgstuff/httpd.conf: $(HTTPD_CONF_SRC) > if [ ! -d $(dir $@) ] ; then mkdir -p $(dir $@) ; fi > $(fixupcmd) $< > $@ > > % : %.in > if [ ! -d $(dir $@) ] ; then mkdir -p $(dir $@) ; fi >Index: adminserver/configure.ac >=================================================================== >RCS file: /cvs/dirsec/adminserver/configure.ac,v >retrieving revision 1.6 >diff -u -8 -r1.6 configure.ac >--- adminserver/configure.ac 15 Jun 2007 17:13:02 -0000 1.6 >+++ adminserver/configure.ac 15 Jun 2007 21:05:17 -0000 >@@ -118,17 +118,17 @@ > # this is the subdir under $PACKAGE_BASE_NAME where admin server > # specific configs, logs, etc. are found > instancename=admin-serv > > # check for --with-instconfigdir > AC_MSG_CHECKING(for --with-instconfigdir) > AC_ARG_WITH(instconfigdir, > AS_HELP_STRING([--with-instconfigdir=/path], >- [Base directory for instance specific writable configuration directories (default $sysconfdir/$PACKAGE_NAME)]), >+ [Base directory for instance specific writable configuration directories (default $sysconfdir/$PACKAGE_BASE_NAME)]), > [ > if test $withval = yes ; then > AC_ERROR([Please specify a full path with --with-instconfigdir]) > fi > instconfigdir="$withval" > ], > [ > dnl this value is expanded out in Makefile.am >Index: adminserver/admserv/schema/ldif/10dsdata.ldif.tmpl >=================================================================== >RCS file: /cvs/dirsec/adminserver/admserv/schema/ldif/10dsdata.ldif.tmpl,v >retrieving revision 1.1 >diff -u -8 -r1.1 10dsdata.ldif.tmpl >--- adminserver/admserv/schema/ldif/10dsdata.ldif.tmpl 13 Jun 2007 17:48:35 -0000 1.1 >+++ adminserver/admserv/schema/ldif/10dsdata.ldif.tmpl 15 Jun 2007 21:05:17 -0000 >@@ -24,17 +24,17 @@ > objectClass: top > nsServerSecurity: off > nsServerID: slapd-%dsid% > nsBindDN: %rootdn% > nsBaseDN: %ds_suffix% > serverRoot: %ds_serverroot% > nsServerPort: %ds_port% > nsSecureServerPort: %ds_secure_port% >-serverProductName: Directory Server (%hostname%) >+serverProductName: Directory Server (%dsid%) > serverVersionNumber: %ds_version% > nsSuiteSpotUser: %ds_user% > serverHostName: %fqdn% > cn: slapd-%dsid% > uniqueMember: cn=slapd-%dsid%, cn=%brand% Directory Server, cn=Server Group, cn=%fqdn%, ou=%domain%, o=NetscapeRoot > uniqueMember: cn=admin-serv-%asid%, cn=%brand% Administration Server, cn=Server Group, cn=%fqdn%, ou=%domain%, o=NetscapeRoot > userPassword: %ds_passwd% >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 237356
:
153230
|
153562
|
153667
|
153668
|
153674
|
153675
|
153677
|
153678
|
155103
|
155105
|
155406
|
155407
|
155408
|
155409
|
155410
|
155411
|
155412
|
155413
|
155414
|
155483
|
155484
|
155485
|
155486
|
155487
|
155488
|
155489
|
155490
|
156389
|
156510
|
156525
|
156539
|
156540
|
156541
|
156612
|
156613
|
156614
|
156626
|
156633
|
156634
|
156741
|
156829
|
156834
|
156839
|
156840
|
156895
|
157043
|
157044
|
157133
|
157159
|
157160
|
157164
|
157165
|
157167
|
157298
|
157378
|
157381
| 157388 |
157390
|
157400
|
157401
|
157407
|
157408
|
157429
|
157431
|
157469
|
157471
|
157479
|
157480
|
160762