[Fedora-directory-commits] ldapserver/ldap/servers/slapd/tools pwenc.c, 1.8, 1.9
by Doctor Conrad
Author: rmeggins
Update of /cvs/dirsec/ldapserver/ldap/servers/slapd/tools
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv14112/ldapserver/ldap/servers/slapd/tools
Modified Files:
pwenc.c
Log Message:
Resolves: bug 237356
Description: Move DS Admin Code into Admin Server - ldif templates, pwdhash
Reviewed by: nhosoi (Thanks!)
Fix Description: These changes are primarily to allow the admin server setup to run completely in perl with no more setuputil code.
1) Added LDIF templates for DS config. template-dse.ldif is the core minimal directory server configuration. Values can be replaced with parameters in the same style as used with register_server.pl - %token%. For the plugin entries, the plugin shared library name is now just a name. There is no more full path. The code in dynalib.c handles this case by using the compiled in PLUGINDIR. The NSPR function PR_GetLibraryName knows the correct shared lib suffix for the platform. All of this allows us to do 2).
2) Added ability to run pwdhash with no server configuration. If no configuration is given, it uses the template-dse.ldif above. And instead of having to worry about where the plugins are installed and the shared lib suffix, it just depends on the above changes. This allows us to generate password hashes during setup before the directory server instance is created, and also to keep clear text password usage to a minimum.
3) Added defaultuser and defaultgroup.
4) Added support for continuation lines in Inf files.
5) All user visible messages during setup should be localizable
Platforms tested: RHEL4
Flag Day: Yes, autotool file changes.
Doc impact: Yes, along with the previous fixes for this bug.
Index: pwenc.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/slapd/tools/pwenc.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- pwenc.c 10 Nov 2006 23:45:51 -0000 1.8
+++ pwenc.c 19 Jun 2007 18:24:58 -0000 1.9
@@ -80,7 +80,7 @@
struct pw_scheme *pwdhashscheme;
int heflag = 0;
-static int slapd_config(const char *configdir);
+static int slapd_config(const char *configdir, const char *configfile);
static int entry_has_attr_and_value(Slapi_Entry *e, const char *attrname, char *value);
static void
@@ -124,6 +124,41 @@
}
+static slapdFrontendConfig_t *
+init_config(char *configdir)
+{
+ char *abs_configdir = NULL;
+ char *configfile = NULL;
+ char errorbuf[SLAPI_DSE_RETURNTEXT_SIZE];
+ slapdFrontendConfig_t *slapdFrontendConfig = NULL;
+
+ if (configdir == NULL) { /* use default */
+ configdir = TEMPLATEDIR;
+ configfile = "template-dse.ldif";
+ }
+ /* kexcoff: quite the same as slapd_bootstrap_config */
+ FrontendConfig_init();
+
+ abs_configdir = rel2abspath( configdir );
+ if ( config_set_configdir( "configdir (-D)", abs_configdir,
+ errorbuf, 1) != LDAP_SUCCESS ) {
+ fprintf( stderr, "%s\n", errorbuf );
+ return( NULL );
+ }
+ slapi_ch_free((void **)&abs_configdir);
+
+ slapdFrontendConfig = getFrontendConfig();
+ if (0 == slapd_config(slapdFrontendConfig->configdir, configfile)) {
+ fprintf(stderr,
+ "The configuration files in directory %s could not be read or were not found. Please refer to the error log or output for more information.\n",
+ slapdFrontendConfig->configdir);
+ return(NULL);
+ }
+
+ return slapdFrontendConfig;
+}
+
+
int
main( argc, argv )
int argc;
@@ -159,31 +194,22 @@
while (( i = getopt( argc, argv, opts )) != EOF ) {
switch ( i ) {
case 'D':
- /* kexcoff: quite the same as slapd_bootstrap_config */
- FrontendConfig_init();
-
- configdir = rel2abspath( optarg );
- if ( config_set_configdir( "configdir (-D)", configdir,
- errorbuf, 1) != LDAP_SUCCESS ) {
- fprintf( stderr, "%s\n", errorbuf );
- return( 1 );
+ if (slapdFrontendConfig) {
+ fprintf(stderr, "The -D configdir argument must be given only once, and must be the first argument given\n");
+ usage(name);
+ return 1;
}
- slapi_ch_free((void **)&configdir);
-
-
- slapdFrontendConfig = getFrontendConfig();
- if (0 == slapd_config(slapdFrontendConfig->configdir)) {
- fprintf(stderr,
- "The configuration files in directory %s could not be read or were not found. Please refer to the error log or output for more information.\n",
- slapdFrontendConfig->configdir);
+ if (!(slapdFrontendConfig = init_config(optarg))) {
return(1);
}
break;
case 's': /* set hash scheme */
if (!slapdFrontendConfig) {
- usage( name );
- return( 1 );
+ if (!(slapdFrontendConfig = init_config(NULL))) {
+ usage( name );
+ return(1);
+ }
}
if (( pwsp = pw_name2scheme( optarg )) == NULL ) {
fprintf( stderr, "%s: unknown hash scheme \"%s\"\n", name,
@@ -194,19 +220,23 @@
case 'c': /* compare encoded password to password */
if (!slapdFrontendConfig) {
- usage( name );
- return( 1 );
+ if (!(slapdFrontendConfig = init_config(NULL))) {
+ usage( name );
+ return(1);
+ }
}
cpwd = optarg;
break;
case 'H': /* password(s) is(are) hex-encoded */
if (!slapdFrontendConfig) {
- usage( name );
- return( 1 );
+ if (!(slapdFrontendConfig = init_config(NULL))) {
+ usage( name );
+ return(1);
}
- heflag = 1;
- break;
+ }
+ heflag = 1;
+ break;
default:
usage( name );
@@ -214,8 +244,10 @@
}
if (!slapdFrontendConfig) {
- usage( name );
- return( 1 );
+ if (!(slapdFrontendConfig = init_config(NULL))) {
+ usage( name );
+ return(1);
+ }
}
if ( cpwd != NULL ) {
@@ -272,7 +304,7 @@
but it only loads password storage scheme plugins
*/
static int
-slapd_config(const char *configdir)
+slapd_config(const char *configdir, const char *givenconfigfile)
{
char configfile[MAXPATHLEN+1];
PRFileInfo prfinfo;
@@ -284,7 +316,11 @@
char *lastp = 0;
char *entrystr = 0;
- PR_snprintf(configfile, sizeof(configfile), "%s/%s", configdir, CONFIG_FILENAME);
+ if (!givenconfigfile) {
+ givenconfigfile = CONFIG_FILENAME;
+ }
+
+ PR_snprintf(configfile, sizeof(configfile), "%s/%s", configdir, givenconfigfile);
if ( (rc = PR_GetFileInfo( configfile, &prfinfo )) != PR_SUCCESS )
{
fprintf(stderr,
16 years, 10 months
[Fedora-directory-commits] ldapserver/ldap/servers/slapd dynalib.c, 1.6, 1.7
by Doctor Conrad
Author: rmeggins
Update of /cvs/dirsec/ldapserver/ldap/servers/slapd
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv14112/ldapserver/ldap/servers/slapd
Modified Files:
dynalib.c
Log Message:
Resolves: bug 237356
Description: Move DS Admin Code into Admin Server - ldif templates, pwdhash
Reviewed by: nhosoi (Thanks!)
Fix Description: These changes are primarily to allow the admin server setup to run completely in perl with no more setuputil code.
1) Added LDIF templates for DS config. template-dse.ldif is the core minimal directory server configuration. Values can be replaced with parameters in the same style as used with register_server.pl - %token%. For the plugin entries, the plugin shared library name is now just a name. There is no more full path. The code in dynalib.c handles this case by using the compiled in PLUGINDIR. The NSPR function PR_GetLibraryName knows the correct shared lib suffix for the platform. All of this allows us to do 2).
2) Added ability to run pwdhash with no server configuration. If no configuration is given, it uses the template-dse.ldif above. And instead of having to worry about where the plugins are installed and the shared lib suffix, it just depends on the above changes. This allows us to generate password hashes during setup before the directory server instance is created, and also to keep clear text password usage to a minimum.
3) Added defaultuser and defaultgroup.
4) Added support for continuation lines in Inf files.
5) All user visible messages during setup should be localizable
Platforms tested: RHEL4
Flag Day: Yes, autotool file changes.
Doc impact: Yes, along with the previous fixes for this bug.
Index: dynalib.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/slapd/dynalib.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- dynalib.c 10 Nov 2006 23:45:40 -0000 1.6
+++ dynalib.c 19 Jun 2007 18:24:58 -0000 1.7
@@ -55,15 +55,36 @@
PRLibrary *dl_handle;
} **libs = NULL;
-static void symload_report_error( char *libpath, char *symbol, char *plugin,
+static void symload_report_error( const char *libpath, char *symbol, char *plugin,
int libopen );
+/* construct a full path and name of a plugin
+ very similar to PR_GetLibraryName except that function inserts
+ the string "lib" at the beginning of name, making that function
+ unsuitable for constructing plugin names
+*/
+static char *get_plugin_name(const char *dir, const char *name);
+
+static void free_plugin_name(char *name)
+{
+ PR_smprintf_free(name);
+}
+
void *
sym_load( char *libpath, char *symbol, char *plugin, int report_errors )
{
return sym_load_with_flags(libpath, symbol, plugin, report_errors, PR_FALSE, PR_FALSE);
}
+/* libpath is the pathname from the plugin config entry - it may be an absolute path
+ or a relative path. It does not have to have the shared lib/dll suffix. The
+ PR_GetLibraryName function will create the correct library name and path, including
+ the correct shared library suffix for the platform. So, for example, if you just
+ pass in "libacl-plugin" as the libpath, and you are running on linux, the code
+ will first test for the existence of "libacl-plugin", then will construct the full
+ pathname to load as "PLUGINDIR/libacl-plugin.so" where PLUGINDIR is set during
+ build time to something like /usr/lib/brand/plugins.
+*/
void *
sym_load_with_flags( char *libpath, char *symbol, char *plugin, int report_errors, PRBool load_now, PRBool load_global )
{
@@ -92,9 +113,17 @@
flags |= PR_LD_GLOBAL;
}
+ if (PR_SUCCESS != PR_Access(libpath, PR_ACCESS_READ_OK)) {
+ libSpec.value.pathname = get_plugin_name(PLUGINDIR, libpath);
+ /* then just handle that failure case with symload_report_error below */
+ }
+
if ( (handle = PR_LoadLibraryWithFlags( libSpec, flags )) == NULL ) {
if ( report_errors ) {
- symload_report_error( libpath, symbol, plugin, 0 /* lib not open */ );
+ symload_report_error( libSpec.value.pathname, symbol, plugin, 0 /* lib not open */ );
+ }
+ if (libSpec.value.pathname != libpath) {
+ free_plugin_name((char *)libSpec.value.pathname); /* cast ok - allocated by get_plugin_name */
}
return( NULL );
}
@@ -108,14 +137,17 @@
handle = PR_FindSymbol( libs[i]->dl_handle, symbol );
if ( NULL == handle && report_errors ) {
- symload_report_error( libpath, symbol, plugin, 1 /* lib open */ );
+ symload_report_error( libSpec.value.pathname, symbol, plugin, 1 /* lib open */ );
+ }
+ if (libSpec.value.pathname != libpath) {
+ free_plugin_name((char *)libSpec.value.pathname); /* cast ok - allocated by PR_GetLibraryName */
}
return handle;
}
static void
-symload_report_error( char *libpath, char *symbol, char *plugin, int libopen )
+symload_report_error( const char *libpath, char *symbol, char *plugin, int libopen )
{
char *errtext = NULL;
PRInt32 errlen, err;
@@ -139,3 +171,22 @@
libpath, plugin, 0 );
}
}
+
+/* PR_GetLibraryName does almost everything we need, and unfortunately
+ a little bit more - it adds "lib" to be beginning of the library
+ name. So we have to strip that part off.
+*/
+static char *
+get_plugin_name(const char *path, const char *lib)
+{
+ char *fullname = PR_GetLibraryName(path, lib);
+ char *ptr = PL_strrstr(fullname, "/lib");
+
+ if (ptr) {
+ ++ptr; /* now points at the "l" */
+ /* just copy the remainder of the string on top of here */
+ memmove(ptr, ptr+3, strlen(ptr+3)+1);
+ }
+
+ return fullname;
+}
16 years, 10 months
[Fedora-directory-commits] ldapserver/ldap/cm/newinst slapd.inf.in, 1.1, 1.2
by Doctor Conrad
Author: rmeggins
Update of /cvs/dirsec/ldapserver/ldap/cm/newinst
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv14112/ldapserver/ldap/cm/newinst
Modified Files:
slapd.inf.in
Log Message:
Resolves: bug 237356
Description: Move DS Admin Code into Admin Server - ldif templates, pwdhash
Reviewed by: nhosoi (Thanks!)
Fix Description: These changes are primarily to allow the admin server setup to run completely in perl with no more setuputil code.
1) Added LDIF templates for DS config. template-dse.ldif is the core minimal directory server configuration. Values can be replaced with parameters in the same style as used with register_server.pl - %token%. For the plugin entries, the plugin shared library name is now just a name. There is no more full path. The code in dynalib.c handles this case by using the compiled in PLUGINDIR. The NSPR function PR_GetLibraryName knows the correct shared lib suffix for the platform. All of this allows us to do 2).
2) Added ability to run pwdhash with no server configuration. If no configuration is given, it uses the template-dse.ldif above. And instead of having to worry about where the plugins are installed and the shared lib suffix, it just depends on the above changes. This allows us to generate password hashes during setup before the directory server instance is created, and also to keep clear text password usage to a minimum.
3) Added defaultuser and defaultgroup.
4) Added support for continuation lines in Inf files.
5) All user visible messages during setup should be localizable
Platforms tested: RHEL4
Flag Day: Yes, autotool file changes.
Doc impact: Yes, along with the previous fixes for this bug.
Index: slapd.inf.in
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/cm/newinst/slapd.inf.in,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- slapd.inf.in 15 Jun 2007 17:02:29 -0000 1.1
+++ slapd.inf.in 19 Jun 2007 18:24:58 -0000 1.2
@@ -47,12 +47,14 @@
NickName= slapd
Version= @PACKAGE_VERSION@
Compatible= 1.0
-BuildNumber= @BUILDNUM@
-Expires= 0
-Security= domestic
-Vendor= @vendor@
+BuildNumber= @NQBUILD_NUM@
Description= @capbrand@ Directory Server
ProductName=Directory Server
+Vendor= @vendor@
+# the rest of these are obsolete, but left here for
+# compatability with the old setuputil
+Expires= 0
+Security= domestic
IsDirLite=false
PrePreInstall= dsktune
PreInstall= ns-config
16 years, 10 months
[Fedora-directory-commits] ldapserver/ldap/admin/src/scripts SetupDialogs.pm.in, NONE, 1.1 Util.pm.in, NONE, 1.1 DialogManager.pm, 1.2, 1.3 Inf.pm, 1.1, 1.2 Setup.pm.in, 1.3, 1.4 setup-ds.res.in, 1.3, 1.4 SetupDialogs.pm, 1.1, NONE Util.pm, 1.2, NONE
by Doctor Conrad
Author: rmeggins
Update of /cvs/dirsec/ldapserver/ldap/admin/src/scripts
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv14112/ldapserver/ldap/admin/src/scripts
Modified Files:
DialogManager.pm Inf.pm Setup.pm.in setup-ds.res.in
Added Files:
SetupDialogs.pm.in Util.pm.in
Removed Files:
SetupDialogs.pm Util.pm
Log Message:
Resolves: bug 237356
Description: Move DS Admin Code into Admin Server - ldif templates, pwdhash
Reviewed by: nhosoi (Thanks!)
Fix Description: These changes are primarily to allow the admin server setup to run completely in perl with no more setuputil code.
1) Added LDIF templates for DS config. template-dse.ldif is the core minimal directory server configuration. Values can be replaced with parameters in the same style as used with register_server.pl - %token%. For the plugin entries, the plugin shared library name is now just a name. There is no more full path. The code in dynalib.c handles this case by using the compiled in PLUGINDIR. The NSPR function PR_GetLibraryName knows the correct shared lib suffix for the platform. All of this allows us to do 2).
2) Added ability to run pwdhash with no server configuration. If no configuration is given, it uses the template-dse.ldif above. And instead of having to worry about where the plugins are installed and the shared lib suffix, it just depends on the above changes. This allows us to generate password hashes during setup before the directory server instance is created, and also to keep clear text password usage to a minimum.
3) Added defaultuser and defaultgroup.
4) Added support for continuation lines in Inf files.
5) All user visible messages during setup should be localizable
Platforms tested: RHEL4
Flag Day: Yes, autotool file changes.
Doc impact: Yes, along with the previous fixes for this bug.
--- NEW FILE SetupDialogs.pm.in ---
# 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.
#
# You should have received a copy of the GNU General Public License along with
# this Program; if not, write to the Free Software Foundation, Inc., 59 Temple
# Place, Suite 330, Boston, MA 02111-1307 USA.
#
# In addition, as a special exception, Red Hat, Inc. gives You the additional
# right to link the code of this Program with code not covered under the GNU
# General Public License ("Non-GPL Code") and to distribute linked combinations
# including the two, subject to the limitations in this paragraph. Non-GPL Code
# permitted under this exception must only link to the code of this Program
# through those well defined interfaces identified in the file named EXCEPTION
# found in the source code files (the "Approved Interfaces"). The files of
# Non-GPL Code may instantiate templates or use macros or inline functions from
# the Approved Interfaces without causing the resulting work to be covered by
# the GNU General Public License. Only Red Hat, Inc. may make changes or
# additions to the list of Approved Interfaces. You must obey the GNU General
# Public License in all respects for all of the Program code and other code used
# in conjunction with the Program except the Non-GPL Code covered by this
# exception. If you modify this file, you may extend this exception to your
# version of the file, but you are not obligated to do so. If you do not wish to
# provide this exception without modification, you must delete this exception
# statement from your version and license this file solely under the GPL without
# exception.
#
#
# Copyright (C) 2007 Red Hat, Inc.
# All rights reserved.
# END COPYRIGHT BLOCK
#
package SetupDialogs;
use strict;
use DialogManager;
use Setup;
use Dialog;
use Net::Domain qw(hostfqdn);
my $welcome = new DialogYesNo (
$EXPRESS,
['dialog_welcome_text', 'brand', 'brand'],
1,
sub {
my $self = shift;
my $ans = shift;
my $res = $self->handleResponse($ans);
if ($res == $DialogManager::NEXT) {
$res = $DialogManager::ERR if (!$self->isYes());
}
return $res;
},
['dialog_welcome_prompt'],
);
my $license = new DialogYesNo (
$EXPRESS,
'dialog_license_text',
0,
sub {
my $self = shift;
my $ans = shift;
my $res = $self->handleResponse($ans);
if ($res == $DialogManager::NEXT) {
$res = $DialogManager::ERR if (!$self->isYes());
}
return $res;
},
['dialog_license_prompt']
);
my $setuptype = new Dialog (
$EXPRESS,
'dialog_setuptype_text',
sub {
my $self = shift;
return $self->{manager}->getType();
},
sub {
my $self = shift;
my $ans = shift;
my $res = $DialogManager::SAME;
if ($ans < $EXPRESS or $ans > $CUSTOM) {
$self->{manager}->alert("dialog_setuptype_error");
} else {
$res = $DialogManager::NEXT;
$self->{manager}->setType($ans);
}
return $res;
},
['dialog_setuptype_prompt']
);
my $hostdlg = new Dialog (
$TYPICAL,
'dialog_hostname_text',
sub {
my $self = shift;
return $self->{manager}->{inf}->{General}->{FullMachineName} ||
hostfqdn;
},
sub {
my $self = shift;
my $ans = shift;
my $res = $DialogManager::NEXT;
if ($ans !~ /\./) {
$self->{manager}->alert("dialog_hostname_warning", $ans);
}
$self->{manager}->{inf}->{General}->{FullMachineName} = $ans;
return $res;
},
['dialog_hostname_prompt']
);
# must verify that the user or uid specified by the user to run the server as
# is a valid uid
sub verifyUserChoice {
my $self = shift;
my $ans = shift;
my $res = $DialogManager::NEXT;
# convert numeric uid to string
my $strans = $ans;
if ($ans =~ /^\d/) { # numeric - convert to string
$strans = getpwuid $ans;
if (!$strans) {
$self->{manager}->alert("dialog_ssuser_error", $ans);
return $DialogManager::SAME;
}
}
if ($> != 0) { # if not root, the user must be our uid
my $username = getlogin;
if ($strans ne $username) {
$self->{manager}->alert("dialog_ssuser_must_be_same", $username);
return $DialogManager::SAME;
}
} else { # user is root - verify id
my $nuid = getpwnam $strans;
if (!defined($nuid)) {
$self->{manager}->alert("dialog_ssuser_error", $ans);
return $DialogManager::SAME;
}
if (!$nuid) {
$self->{manager}->alert("dialog_ssuser_root_warning");
}
}
$self->{manager}->{inf}->{General}->{SuiteSpotUserID} = $ans;
return $res;
}
# must verify that the given group is one of the groups the given user
# belongs to
sub verifyGroupChoice {
my $self = shift;
my $ans = shift;
my $res = $DialogManager::NEXT;
my ($dummy, $memstr);
my $strgrp;
my $numgrp;
if ($ans =~ /^\d/) { # numeric
$numgrp = $ans;
($strgrp, $dummy, $dummy, $memstr) = getgrgid $ans;
} else {
$strgrp = $ans;
($dummy, $dummy, $numgrp, $memstr) = getgrnam $ans;
}
if (!defined($strgrp) or !defined($numgrp)) {
$self->{manager}->alert("dialog_ssgroup_error", $ans);
return $DialogManager::SAME;
}
# get the user id, and then get the user's default group id
my $uid = $self->{manager}->{inf}->{General}->{SuiteSpotUserID};
my $usergid;
if ($uid =~ /^\d/) { # numeric
($uid, $dummy, $dummy, $usergid, $dummy) = getpwuid $uid;
} else { # string
($uid, $dummy, $dummy, $usergid, $dummy) = getpwnam $uid;
}
if ($numgrp == $usergid) {
$self->{manager}->{inf}->{General}->{SuiteSpotGroup} = $ans;
} elsif ($memstr) { # see if the user is in the member list
if ($memstr =~ /\b$uid\b/) { # uid exactly matches one of the users in the member string
$self->{manager}->{inf}->{General}->{SuiteSpotGroup} = $ans;
} else { # no match
$self->{manager}->alert("dialog_ssgroup_no_match",
$self->{manager}->{inf}->{General}->{SuiteSpotUserID},
$ans, $memstr);
$res = $DialogManager::SAME;
}
} else { # user not in group
$self->{manager}->alert("dialog_ssgroup_no_user",
$self->{manager}->{inf}->{General}->{SuiteSpotUserID},
$ans);
$res = $DialogManager::SAME;
}
return $res;
}
my $usergroup = new Dialog (
$TYPICAL,
'dialog_ssuser_text',
sub {
my $self = shift;
my $index = shift;
if ($index == 0) {
my $username = $self->{manager}->{inf}->{General}->{SuiteSpotUserID};
if (!$username) {
if ($> == 0) { # if root, use the default user
$username = "@defaultuser@";
} else { # if not root, use the user's uid
$username = getlogin;
}
}
return $username;
} else { # group
my $groupname = $self->{manager}->{inf}->{General}->{SuiteSpotGroup};
if (!$groupname) {
if ($> == 0) { # if root, use the default group
$groupname = "@defaultgroup@";
} else { # if not root, use the user's gid
$groupname = getgrgid $(;
}
}
return $groupname;
}
},
sub {
my $self = shift;
my $ans = shift;
my $index = shift;
if ($index == 0) {
return verifyUserChoice($self, $ans);
} else {
return verifyGroupChoice($self, $ans);
}
},
['dialog_ssuser_prompt'], ['dialog_ssgroup_prompt']
);
sub getDialogs {
return ($welcome, $license, $setuptype, $hostdlg, $usergroup);
}
1;
--- NEW FILE Util.pm.in ---
# 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.
#
# You should have received a copy of the GNU General Public License along with
# this Program; if not, write to the Free Software Foundation, Inc., 59 Temple
# Place, Suite 330, Boston, MA 02111-1307 USA.
#
# In addition, as a special exception, Red Hat, Inc. gives You the additional
# right to link the code of this Program with code not covered under the GNU
# General Public License ("Non-GPL Code") and to distribute linked combinations
# including the two, subject to the limitations in this paragraph. Non-GPL Code
# permitted under this exception must only link to the code of this Program
# through those well defined interfaces identified in the file named EXCEPTION
# found in the source code files (the "Approved Interfaces"). The files of
# Non-GPL Code may instantiate templates or use macros or inline functions from
# the Approved Interfaces without causing the resulting work to be covered by
# the GNU General Public License. Only Red Hat, Inc. may make changes or
# additions to the list of Approved Interfaces. You must obey the GNU General
# Public License in all respects for all of the Program code and other code used
# in conjunction with the Program except the Non-GPL Code covered by this
# exception. If you modify this file, you may extend this exception to your
# version of the file, but you are not obligated to do so. If you do not wish to
# provide this exception without modification, you must delete this exception
# statement from your version and license this file solely under the GPL without
# exception.
#
#
# Copyright (C) 2007 Red Hat, Inc.
# All rights reserved.
# END COPYRIGHT BLOCK
#
package Util;
use Mozilla::LDAP::Conn;
use Mozilla::LDAP::Utils qw(normalizeDN);
use Mozilla::LDAP::API; # Direct access to C API
use Mozilla::LDAP::LDIF;
require Exporter;
@ISA = qw(Exporter);
@EXPORT = qw(portAvailable getAvailablePort isValidDN addSuffix getMappedEntries
process_maptbl check_and_add_entry getMappedEntries
getHashedPassword);
@EXPORT_OK = qw(portAvailable getAvailablePort isValidDN addSuffix getMappedEntries
process_maptbl check_and_add_entry getMappedEntries
getHashedPassword);
use strict;
use Socket;
# return true if the given port number is available, false otherwise
sub portAvailable {
my $port = shift;
my $proto = getprotobyname('tcp');
my $rc = socket(SOCK, PF_INET, SOCK_STREAM, $proto);
if ($rc == 1) {
$rc = bind(SOCK, sockaddr_in($port, INADDR_ANY));
}
close(SOCK);
return $rc and ($rc == 1);
}
# returns a randomly assigned port number, or -1
# if not able to find an available port
sub getAvailablePort {
my $MINPORT = 1024;
my $MAXPORT = 65535;
srand( time() ^ ($$ + ($$ << 15)) );
while (1) {
my $port = $MINPORT + int(rand($MAXPORT-$MINPORT));
if (portAvailable($port)) {
return $port;
}
}
}
sub isValidDN {
my $dn = shift;
return ($dn =~ /^[0-9a-zA-Z_-]+=.*$/);
}
sub debug {
# print @_, "\n";
}
# delete the subtree starting from the passed entry
sub delete_all
{
my ($conn, $bentry) = @_;
my $sentry = $conn->search($bentry->{dn},
"subtree", "(objectclass=*)", 0, ("dn"));
my @mystack = ();
while ($sentry) {
push @mystack, $sentry->getDN();
$sentry = $conn->nextEntry();
}
# reverse order
my $dn = pop @mystack;
while ($dn) {
$conn->delete($dn);
my $rc = $conn->getErrorCode();
if ( $rc != 0 ) {
$conn->printError();
print "ERROR: unable to delete entry $dn, error code: $rc\n";
return 1;
}
$dn = pop @mystack;
}
return 0;
}
my %ignorelist = (
"modifytimestamp", "modifyTimestamp",
"createtimestamp", "createTimestamp",
"installationtimestamp", "installationTimestamp",
"creatorsname", "creatorsName",
"modifiersname", "modifiersName",
"numsubordinates", "numSubordinates"
);
my %speciallist = (
"uniquemember", 1
);
# 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) = @_;
my $rc = 0;
foreach my $akey ( keys %{$e0} )
{
next if ( $ignorelist{lc($akey)} );
my $aval0 = $e0->{$akey};
my $aval1 = $e1->{$akey};
my $a0max = $#{$aval0};
my $a1max = $#{$aval1};
my $amin = $#{$aval0};
if ( $a0max != $a1max )
{
if ( $speciallist{lc($akey)} )
{
$rc = 1;
if ( $a0max < $a1max )
{
$amin = $a0max;
}
else
{
$amin = $a1max;
}
}
else
{
$rc = -1;
return $rc;
}
}
my @sval0 = sort { $a cmp $b } @{$aval0};
my @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 = $speciallist{lc($akey)};
}
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
# you can use this as the callback to getMappedEntries, so
# that for each entry in the ldif file being processed, you
# can call this subroutine to add or update the entry
# use like this:
# getMappedEntries($mapper, \@ldiffiles, \&check_and_add_entry,
# [$conn, $fresh, $verbose]);
# where $conn is a perldap Conn
# $fresh if true will update the entry if it exists
# $verbose prints out more info
sub check_and_add_entry
{
my ($context, $aentry) = @_;
my $conn = $context->[0];
my $fresh = $context->[1];
my $verbose = $context->[2];
my $sentry = $conn->search($aentry->{dn}, "base", "(objectclass=*)");
do
{
my $needtoadd = 1;
my $needtomod = 0;
my $rval = -1;
if ( $sentry && !$fresh )
{
$rval = comp_entries( $sentry, $aentry );
}
if ( 0 == $rval && !$fresh )
{
# the identical entry exists on the configuration DS.
# no need to add the entry.
$needtoadd = 0;
goto out;
}
elsif ( (1 == $rval) && !$fresh )
{
$needtoadd = 0;
$needtomod = 1;
}
elsif ( $sentry && $sentry->{dn} )
{
# $fresh || $rval == -1
# an entry having the same DN exists, but the attributes do not
# match. remove the entry and the subtree underneath.
if ( $verbose )
{
print "Deleting an entry dn: $sentry->{dn} ...\n";
}
$rval = delete_all($conn, $sentry);
if ( 0 != $rval )
{
return 0;
}
}
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 0;
}
# if ( $verbose )
# {
# print "Entry $aentry->{dn} is added\n";
# }
}
elsif ( 1 == $needtomod ) # $sentry exists
{
foreach my $attr ( keys %speciallist )
{
foreach my $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 0;
}
}
if ( $sentry )
{
$sentry = $conn->nextEntry(); # supposed to have no more entries
}
} until ( !$sentry );
out:
return 1;
}
# the default callback used with getMappedEntries
# just adds the given entry to the given list
sub cbaddent {
my $list = shift;
my $ent = shift;
push @{$list}, $ent;
return 1;
}
# given a mapper and a list of LDIF files, produce a list of
# perldap Entry objects which have had their tokens subst-ed
# with values from the mapper
# An optional callback can be supplied. Each entry will be
# given to this callback. The callback should return a list
# of localizable errors. If no callback is supplied, the
# entries will be returned in a list.
# Arguments:
# mapper - a hash ref - the keys are the tokens to replace
# and the values are the replacements
# ldiffiles - an array ref - the list of LDIF files to
# operate on
# callback (optional) - a code ref - a ref to a subroutine
# that will be called with each entry - see below
# context (optional) - this will be passed as the first
# argument to your given callback - see below
# errs (optional) - an array ref - This is how errors
# are returned to the caller - see below
# Callback:
# The callback sub will be called for each entry after
# the entry has been converted. The callback will be
# called with the given context as the first argument
# and the Mozilla::LDAP::Entry as the second argument,
# and an errs array ref as the third argument. The
# callback should return true to continue processing,
# or false if a fatal error was encountered that should
# abort processing of any further.
# Errors:
# This function should return an array of errors in the
# format described below, for use with Resource::getText().
# If the callback returns any errors
# Return:
# The return value is a list of entries.
# Example usage:
# sub handle_entries {
# my $context = shift;
# my $entry = shift;
# .... do something with entry ....
# .... if $context is Mozilla::LDAP::Conn, $conn->add($entry); ...
# .... report errors ....
# if ($fatalerror) {
# return 0;
# } else {
# return 1;
# }
# }
# $mapper = {foo => 'bar', baz => 'biff'};
# @ldiffiles = ('foo.ldif', 'bar.ldif', ..., 'biff.ldif');
# $conn = new Mozilla::LDAP::Conn(...);
# @entries = getMappedEntries($mapper, \@ldiffiles, \&handle_entries, $conn);
# Note that this will return 0 entries since a callback was used.
# The simpler example is this:
# @entries = getMappedEntries($mapper, \@ldiffiles);
#
sub getMappedEntries {
my $mapper = shift;
my $ldiffiles = shift;
my $callback = shift || \&cbaddent; # default - just add entry to @entries
my @entries = ();
my $context = shift || \@entries;
my $error;
if (!ref($ldiffiles)) {
$ldiffiles = [ $ldiffiles ];
}
foreach my $ldiffile (@{$ldiffiles}) {
open(MYLDIF, "< $ldiffile") or die "Can't open $ldiffile : $!";
my $in = new Mozilla::LDAP::LDIF(*MYLDIF);
debug("Processing $ldiffile ...");
ENTRY: while (my $entry = Mozilla::LDAP::LDIF::readOneEntry($in)) {
# first, fix the DN
my $dn = $entry->getDN();
my $origdn = $dn;
while ( $dn =~ /%([\w_-]+)%/ ) {
if (exists($mapper->{$1})) {
$dn =~ s{%([\w_-]+)%}{$mapper->{$1}}ge;
} else {
print "ERROR: \"$origdn\" mapped to \"$dn\".\n";
print "The LDIF file $ldiffile contains a token $1 for which there is no mapper.\n";
print "Please check $ldiffile and your mapper to make sure all tokens are handled correctly.\n";
$error = 1;
last ENTRY;
}
}
$entry->setDN($dn);
# next, fix all of the values in all of the attributes
foreach my $attr (keys %{$entry}) {
my @newvalues = ();
foreach my $value ($entry->getValues($attr)) {
# Need to repeat to handle nested subst
my $origvalue = $value;
while ( $value =~ /%([\w_-]+)%/ ) {
if (exists($mapper->{$1})) {
$value =~ s{%([\w_-]+)%}{$mapper->{$1}}ge;
} else {
print "ERROR: \"$origvalue\" mapped to \"$value\".\n";
print "The LDIF file $ldiffile contains a token $1 for which there is no mapper.\n";
print "Please check $ldiffile and your mapper to make sure all tokens are handled correctly.\n";
$error = 1;
last ENTRY;
}
}
push @newvalues, $value;
}
$entry->setValues( $attr, @newvalues );
}
if (!&{$callback}($context, $entry)) {
print "There was an error processing entry ", $entry->getDN(), "\n";
print "Cannot continue processing entries.\n";
$error = 1;
last ENTRY;
}
}
close(MYLDIF);
last if ($error); # do not process any more ldiffiles if an error occurred
}
return @entries;
}
# you should only use this function if you know for sure
# that the suffix and backend do not already exist
# use addSuffix instead
sub newSuffixAndBackend {
my $context = shift;
my $suffix = shift;
my $bename = shift;
my $nsuffix = normalizeDN($suffix);
my @errs;
my $dn = "cn=$bename, cn=ldbm database, cn=plugins, cn=config";
my $entry = new Mozilla::LDAP::Entry();
$entry->setDN($dn);
$entry->setValues('objectclass', 'top', 'extensibleObject', 'nsBackendInstance');
$entry->setValues('cn', $bename);
$entry->setValues('nsslapd-suffix', $nsuffix);
$context->add($entry);
my $rc = $context->getErrorCode();
if ($rc) {
return ('error_creating_suffix_backend', $suffix, $bename, $context->getErrorString());
}
$entry = new Mozilla::LDAP::Entry();
$dn = "cn=\"$nsuffix\", cn=mapping tree, cn=config";
$entry->setDN($dn);
$entry->setValues('objectclass', 'top', 'extensibleObject', 'nsMappingTree');
$entry->setValues('cn', "\"$nsuffix\"");
$entry->setValues('nsslapd-state', 'backend');
$entry->setValues('nsslapd-backend', $bename);
$context->add($entry);
$rc = $context->getErrorCode();
if ($rc) {
return ('error_creating_suffix', $suffix, $context->getErrorString());
}
return ();
}
sub findbecb {
my $entry = shift;
my $attrs = shift;
return $entry->hasValue('objectclass', $attrs->[0], 1) &&
$entry->hasValue('cn', $attrs->[1], 1);
}
sub findBackend {
my $context = shift;
my $bename = shift;
my $ent;
if (ref($context) eq 'Mozilla::LDAP::Conn') {
$ent = $context->search("cn=ldbm database,cn=plugins,cn=config", "one",
"(&(objectclass=nsBackendInstance)(cn=$bename)")
} else {
$ent = $context->search("cn=ldbm database,cn=plugins,cn=config", "one",
\&findbecb, ['nsBackendInstance', $bename])
}
}
sub findsuffixcb {
my $entry = shift;
my $attrs = shift;
return $entry->hasValue('cn', $attrs->[0], 1) ||
$entry->hasValue('cn', $attrs->[1], 1);
}
sub findSuffix {
my $context = shift;
my $suffix = shift;
my $nsuffix = normalizeDN($suffix);
my $ent;
if (ref($context) eq 'Mozilla::LDAP::Conn') {
$ent = $context->search("cn=mapping tree,cn=config", "one",
"(|(cn=\"$suffix\")(cn=\"$nsuffix\"))");
} else {
$ent = $context->search("cn=mapping tree,cn=config", "one",
\&findsuffixcb, ["\"$suffix\"", "\"$nsuffix\""])
}
}
sub getUniqueBackendName {
my $context = shift;
my $bename = "backend";
my $index = 0;
my $ent = findBackend($context, ($bename . $index));
while ($ent) {
++$index;
$ent = findBackend($context, ($bename . $index));
}
return $bename.$index;
}
sub addSuffix {
my $context = shift; # Conn
my $suffix = shift;
my $bename = shift; # optional
my $ent;
if ($bename && ($ent = findBackend($context, $bename))) {
return ('backend_already_exists', $bename, $ent->getDN());
}
if ($ent = findSuffix($context, $suffix)) {
return ('suffix_already_exists', $suffix, $ent->getDN());
}
if (!$bename) {
$bename = getUniqueBackendName($context);
}
my @errs = newSuffixAndBackend($context, $suffix, $bename);
return @errs;
}
# 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.
# The %token% tokens are replaced in getMappedEntries
sub process_maptbl
{
my ($mapper, @infdata) = @_;
if (defined($mapper->{""})) {
$mapper = $mapper->{""}; # side effect of Inf with no sections
}
KEY: foreach my $key (keys %{$mapper})
{
my $value = $mapper->{$key};
if ($value =~ /^\"/)
{
$value =~ tr/\"//d; # value is a regular double quoted string - remove quotes
$mapper->{$key} = $value;
}
elsif ($value =~ /^\`/)
{
$value =~ tr/\`//d; # value is a perl expression to eval
my $returnvalue; # set in eval expression
eval $value;
$mapper->{$key} = $returnvalue; # perl expression sets $returnvalue
}
else
{
# get the value from one of the Inf passed in
my $infsection;
foreach my $thisinf (@infdata)
{
foreach my $section0 (keys %{$thisinf})
{
$infsection = $thisinf->{$section0};
next if (!ref($infsection));
if (defined($infsection->{$value}))
{
$mapper->{$key} = $infsection->{$value};
next KEY;
}
}
}
if (!defined($infsection->{$value}))
{
print "ERROR: $value not found in the .inf files\n";
return {};
}
}
}
return $mapper;
}
sub getHashedPassword {
my $pwd = shift;
my $alg = shift;
if ($pwd =~ /\{\w+\}.+/) {
return $pwd; # already hashed
}
my $cmd = "@bindir@/pwdhash";
if ($alg) {
$cmd .= " -s $alg";
}
$cmd .= " \'$pwd\'";
my $hashedpwd = `$cmd`;
chomp($hashedpwd);
return $hashedpwd;
}
1;
Index: DialogManager.pm
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/admin/src/scripts/DialogManager.pm,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- DialogManager.pm 15 Jun 2007 22:11:15 -0000 1.2
+++ DialogManager.pm 19 Jun 2007 18:24:57 -0000 1.3
@@ -94,6 +94,10 @@
my $self = shift;
my $ans = shift;
+ if (!$ans) {
+ return 0;
+ }
+
# the word "back"
if ($ans =~ /back/i) {
return 1;
Index: Inf.pm
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/admin/src/scripts/Inf.pm,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- Inf.pm 8 Jun 2007 01:09:16 -0000 1.1
+++ Inf.pm 19 Jun 2007 18:24:57 -0000 1.2
@@ -67,7 +67,7 @@
# and the value is the config param value
my $self = shift;
my $filename = shift;
- my $curSection;
+ my $curSection = "";
if ($filename) {
$self->{filename} = $filename;
@@ -75,17 +75,36 @@
$filename = $self->{filename};
}
+ my $incontinuation = 0;
+ my $curkey;
open INF, $filename or die "Error: could not open inf file $filename: $!";
while (<INF>) {
- # e.g. [General]
- if (/^\[(.*?)\]/) {
+ my $iscontinuation;
+ chop; # trim trailing newline
+ if (/^\s*$/) { # skip blank/empty lines
+ $incontinuation = 0;
+ next;
+ }
+ if (/^\s*\#/) { # skip comment lines
+ $incontinuation = 0;
+ next;
+ }
+ if (/\\$/) { # line ends in \ - continued on next line
+ chop;
+ $iscontinuation = 1;
+ }
+ if ($incontinuation) {
+ $self->{$curSection}->{$curkey} .= "\n" . $_; # add line in entirety to current value
+ } elsif (/^\[(.*?)\]/) { # e.g. [General]
$curSection = $1;
- } elsif (/^\s*$/) {
- next; # skip blank lines
- } elsif (/^\s*\#/) {
- next; # skip comment lines
- } elsif (/^\s*(.*?)\s*=\s*(.*?)\s*$/) {
- $self->{$curSection}->{$1} = $2;
+ } elsif (/^\s*(.*?)\s*=\s*(.*?)\s*$/) { # key = value
+ $curkey = $1;
+ $self->{$curSection}->{$curkey} = $2;
+ }
+ if ($iscontinuation) { # if line ends with a backslash, continue the data on the next line
+ $incontinuation = 1;
+ } else {
+ $incontinuation = 0;
}
}
close INF;
Index: Setup.pm.in
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/admin/src/scripts/Setup.pm.in,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- Setup.pm.in 15 Jun 2007 22:11:15 -0000 1.3
+++ Setup.pm.in 19 Jun 2007 18:24:57 -0000 1.4
@@ -111,6 +111,7 @@
sub new {
my $type = shift;
my $self = {};
+ $self->{res} = shift;
my ($debuglevel, $silent, $inffile, $keep, $preonly, $logfile);
my @otherargs;
@@ -147,7 +148,7 @@
# arguments override those passed in via an inf file - this
# allows the reuse of .inf files with some parameters overridden
for (@ARGV) {
- if (/^(\w+)\.(\w+)=(.*)$/) { # e.g. section.param=value
+ if (/^(\w_-+)\.(\w_-+)=(.*)$/) { # e.g. section.param=value
$self->{inf}->{$1}->{$2} = $3;
} else { # error
print STDERR "Error: unknown command line option $_\n";
@@ -176,6 +177,11 @@
# if you use msg like this:
# msg($WARN, "some message")
# it will go to the screen and to the log at the $WARN level
+# all messages are localizable - you must define a resource key
+# the first string passed to this method is a resource key
+# additional strings are used as "arguments" to that resource key
+# if you want to print un-localizable messages, use debug or write
+# directly to the log or screen
sub msg {
my $self = shift;
my $level = shift;
@@ -189,16 +195,16 @@
unshift @text, $level;
$level = $INFO;
}
+ my $string = $self->{res}->getText(@text);
if ($level) {
- $self->log($level, @text);
+ $self->log($level, $string);
}
- print @text;
+ print $string;
}
sub doExit {
my $self = shift;
- $self->msg($FATAL, "Exiting . . .\n");
- $self->msg("Log file is " . $self->{log}->{filename} . "\n");
+ $self->msg($FATAL, 'setup_exiting', $self->{log}->{filename});
exit 1;
}
Index: setup-ds.res.in
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/admin/src/scripts/setup-ds.res.in,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- setup-ds.res.in 15 Jun 2007 22:11:15 -0000 1.3
+++ setup-ds.res.in 19 Jun 2007 18:24:57 -0000 1.4
@@ -85,3 +85,5 @@
suffix_already_exists = The suffix '%s' already exists. Config entry DN '%s'.\n\n
error_creating_suffix_backend = Could not create the suffix '%s'. There was an error creating the backend database named '%s' for the suffix. Error: %s\n\n
error_creating_suffix = Could not create the suffix '%s'. Error: %s\n\n
+
+setup_exiting = Exiting . . .\nLog file is '%s'\n\n
--- SetupDialogs.pm DELETED ---
--- Util.pm DELETED ---
16 years, 10 months
[Fedora-directory-commits] ldapserver/ldap/ldif template-bitwise.ldif.in, NONE, 1.1 template-dnaplugin.ldif.in, NONE, 1.1 template-ldapi-autobind.ldif.in, NONE, 1.1 template-ldapi-default.ldif.in, NONE, 1.1 template-ldapi.ldif.in, NONE, 1.1 template-pampta.ldif.in, NONE, 1.1 template-dse.ldif.in, NONE, 1.1 template-suffix-db.ldif.in, NONE, 1.1
by Doctor Conrad
Author: rmeggins
Update of /cvs/dirsec/ldapserver/ldap/ldif
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv14112/ldapserver/ldap/ldif
Added Files:
template-bitwise.ldif.in template-dnaplugin.ldif.in
template-ldapi-autobind.ldif.in template-ldapi-default.ldif.in
template-ldapi.ldif.in template-pampta.ldif.in
template-dse.ldif.in template-suffix-db.ldif.in
Log Message:
Resolves: bug 237356
Description: Move DS Admin Code into Admin Server - ldif templates, pwdhash
Reviewed by: nhosoi (Thanks!)
Fix Description: These changes are primarily to allow the admin server setup to run completely in perl with no more setuputil code.
1) Added LDIF templates for DS config. template-dse.ldif is the core minimal directory server configuration. Values can be replaced with parameters in the same style as used with register_server.pl - %token%. For the plugin entries, the plugin shared library name is now just a name. There is no more full path. The code in dynalib.c handles this case by using the compiled in PLUGINDIR. The NSPR function PR_GetLibraryName knows the correct shared lib suffix for the platform. All of this allows us to do 2).
2) Added ability to run pwdhash with no server configuration. If no configuration is given, it uses the template-dse.ldif above. And instead of having to worry about where the plugins are installed and the shared lib suffix, it just depends on the above changes. This allows us to generate password hashes during setup before the directory server instance is created, and also to keep clear text password usage to a minimum.
3) Added defaultuser and defaultgroup.
4) Added support for continuation lines in Inf files.
5) All user visible messages during setup should be localizable
Platforms tested: RHEL4
Flag Day: Yes, autotool file changes.
Doc impact: Yes, along with the previous fixes for this bug.
--- NEW FILE template-bitwise.ldif.in ---
dn: cn=Bitwise Plugin,cn=plugins,cn=config
objectClass: top
objectClass: nsSlapdPlugin
objectClass: extensibleObject
cn: Bitwise Plugin
nsslapd-pluginPath: libbitwise-plugin
nsslapd-pluginInitfunc: bitwise_init
nsslapd-pluginType: matchingRule
nsslapd-pluginEnabled: on
--- NEW FILE template-dnaplugin.ldif.in ---
dn: cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
objectclass: nsContainer
cn: Distributed Numeric Assignment Plugin
nsslapd-plugininitfunc: dna_init
nsslapd-plugintype: preoperation
nsslapd-pluginenabled: off
nsslapd-pluginPath: libdna-plugin
--- NEW FILE template-ldapi-autobind.ldif.in ---
dn: cn=config
changetype: modify
replace: nsslapd-ldapiautobind
nsslapd-ldapiautobind: on
-
replace: nsslapd-ldapimaprootdn
nsslapd-ldapimaprootdn: %rootdn%
-
replace: nsslapd-ldapimaptoentries
nsslapd-ldapimaptoentries: off
-
replace: nsslapd-ldapiuidnumbertype
nsslapd-ldapiuidnumbertype: uidNumber
-
replace: nsslapd-ldapigidnumbertype
nsslapd-ldapigidnumbertype: gidNumber
-
replace: nsslapd-ldapientrysearchbase
nsslapd-ldapientrysearchbase: %ds_suffix%
-
replace: nsslapd-ldapiautodnsuffix
nsslapd-ldapiautodnsuffix: cn=peercred,cn=external,cn=auth
--- NEW FILE template-ldapi-default.ldif.in ---
dn: cn=config
changetype: modify
replace: nsslapd-ldapifilepath
nsslapd-ldapifilepath: %run_dir%/slapd-%dsid%.socket
-
replace: nsslapd-ldapilisten
nsslapd-ldapilisten: off
-
replace: nsslapd-ldapimaprootdn
nsslapd-ldapimaprootdn: cn=Directory Manager
-
replace: nsslapd-ldapimaptoentries
nsslapd-ldapimaptoentries: off
-
replace: nsslapd-ldapiuidnumbertype
nsslapd-ldapiuidnumbertype: uidNumber
-
replace: nsslapd-ldapigidnumbertype
nsslapd-ldapigidnumbertype: gidNumber
-
replace: nsslapd-ldapientrysearchbase
nsslapd-ldapientrysearchbase: dc=example, dc=com
-
replace: nsslapd-ldapiautodnsuffix
nsslapd-ldapiautodnsuffix: cn=peercred,cn=external,cn=auth
--- NEW FILE template-ldapi.ldif.in ---
dn: cn=config
changetype: modify
replace: nsslapd-ldapifilepath
nsslapd-ldapifilepath: %ldapifilepath%
-
replace: nsslapd-ldapilisten
nsslapd-ldapilisten: on
--- NEW FILE template-pampta.ldif.in ---
dn: cn=PAM Pass Through Auth,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
objectclass: pamConfig
cn: PAM Pass Through Auth
nsslapd-pluginpath: libpam-passthru-plugin
nsslapd-plugininitfunc: pam_passthruauth_init
nsslapd-plugintype: preoperation
nsslapd-pluginenabled: off
nsslapd-pluginLoadGlobal: true
nsslapd-plugin-depends-on-type: database
pamMissingSuffix: ALLOW
pamExcludeSuffix: cn=config
pamIDMapMethod: RDN
pamIDAttr: notUsedWithRDNMethod
pamFallback: FALSE
pamSecure: TRUE
pamService: ldapserver
--- NEW FILE template-dse.ldif.in ---
dn: cn=config
cn: config
objectclass:top
objectclass:extensibleObject
objectclass:nsslapdConfig
nsslapd-schemadir: %schema_dir%
nsslapd-lockdir: %lock_dir%
nsslapd-tmpdir: %tmp_dir%
nsslapd-certdir: %cert_dir%
nsslapd-saslpath: %sasl_path%
nsslapd-accesslog-logging-enabled: on
nsslapd-accesslog-maxlogsperdir: 10
nsslapd-accesslog-mode: 600
nsslapd-accesslog-maxlogsize: 100
nsslapd-accesslog-logrotationtime: 1
nsslapd-accesslog-logrotationtimeunit: day
nsslapd-accesslog-logrotationsync-enabled: off
nsslapd-accesslog-logrotationsynchour: 0
nsslapd-accesslog-logrotationsyncmin: 0
nsslapd-accesslog: %log_dir%/access
nsslapd-enquote-sup-oc: off
nsslapd-localhost: %fqdn%
nsslapd-schemacheck: 1
nsslapd-rewrite-rfc1274: off
nsslapd-return-exact-case: on
nsslapd-ssl-check-hostname: on
nsslapd-port: %ds_port%
nsslapd-localuser: %ds_user%
nsslapd-errorlog-logging-enabled: on
nsslapd-errorlog-mode: 600
nsslapd-errorlog-maxlogsperdir: 2
nsslapd-errorlog-maxlogsize: 100
nsslapd-errorlog-logrotationtime: 1
nsslapd-errorlog-logrotationtimeunit: week
nsslapd-errorlog-logrotationsync-enabled: off
nsslapd-errorlog-logrotationsynchour: 0
nsslapd-errorlog-logrotationsyncmin: 0
nsslapd-errorlog: %log_dir%/errors
nsslapd-auditlog: %log_dir%/audit
nsslapd-auditlog-mode: 600
nsslapd-auditlog-maxlogsize: 100
nsslapd-auditlog-logrotationtime: 1
nsslapd-auditlog-logrotationtimeunit: day
nsslapd-rootdn: %rootdn%
nsslapd-maxdescriptors: 1024
nsslapd-max-filter-nest-level: 40
nsslapd-rootpw: %ds_passwd%
dn: cn=plugins, cn=config
objectclass: top
objectclass: nsContainer
cn: plugins
dn: cn=Password Storage Schemes,cn=plugins, cn=config
objectclass: top
objectclass: nsContainer
cn: Password Storage Schemes
dn: cn=SSHA,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
cn: SSHA
nsslapd-pluginpath: libpwdstorage-plugin
nsslapd-plugininitfunc: ssha_pwd_storage_scheme_init
nsslapd-plugintype: pwdstoragescheme
nsslapd-pluginenabled: on
dn: cn=SSHA256,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
cn: SSHA256
nsslapd-pluginpath: libpwdstorage-plugin
nsslapd-plugininitfunc: ssha256_pwd_storage_scheme_init
nsslapd-plugintype: pwdstoragescheme
nsslapd-pluginenabled: on
dn: cn=SSHA384,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
cn: SSHA384
nsslapd-pluginpath: libpwdstorage-plugin
nsslapd-plugininitfunc: ssha384_pwd_storage_scheme_init
nsslapd-plugintype: pwdstoragescheme
nsslapd-pluginenabled: on
dn: cn=SSHA512,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
cn: SSHA512
nsslapd-pluginpath: libpwdstorage-plugin
nsslapd-plugininitfunc: ssha512_pwd_storage_scheme_init
nsslapd-plugintype: pwdstoragescheme
nsslapd-pluginenabled: on
dn: cn=SHA,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
cn: SHA
nsslapd-pluginpath: libpwdstorage-plugin
nsslapd-plugininitfunc: sha_pwd_storage_scheme_init
nsslapd-plugintype: pwdstoragescheme
nsslapd-pluginenabled: on
dn: cn=SHA256,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
cn: SHA256
nsslapd-pluginpath: libpwdstorage-plugin
nsslapd-plugininitfunc: sha256_pwd_storage_scheme_init
nsslapd-plugintype: pwdstoragescheme
nsslapd-pluginenabled: on
dn: cn=SHA384,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
cn: SHA384
nsslapd-pluginpath: libpwdstorage-plugin
nsslapd-plugininitfunc: sha384_pwd_storage_scheme_init
nsslapd-plugintype: pwdstoragescheme
nsslapd-pluginenabled: on
dn: cn=SHA512,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
cn: SHA512
nsslapd-pluginpath: libpwdstorage-plugin
nsslapd-plugininitfunc: sha512_pwd_storage_scheme_init
nsslapd-plugintype: pwdstoragescheme
nsslapd-pluginenabled: on
dn: cn=CRYPT,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
cn: CRYPT
nsslapd-pluginpath: libpwdstorage-plugin
nsslapd-plugininitfunc: crypt_pwd_storage_scheme_init
nsslapd-plugintype: pwdstoragescheme
nsslapd-pluginenabled: on
dn: cn=MD5,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
cn: MD5
nsslapd-pluginpath: libpwdstorage-plugin
nsslapd-plugininitfunc: md5_pwd_storage_scheme_init
nsslapd-plugintype: pwdstoragescheme
nsslapd-pluginenabled: on
dn: cn=CLEAR,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
cn: CLEAR
nsslapd-pluginpath: libpwdstorage-plugin
nsslapd-plugininitfunc: clear_pwd_storage_scheme_init
nsslapd-plugintype: pwdstoragescheme
nsslapd-pluginenabled: on
dn: cn=NS-MTA-MD5,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
cn: NS-MTA-MD5
nsslapd-pluginpath: libpwdstorage-plugin
nsslapd-plugininitfunc: ns_mta_md5_pwd_storage_scheme_init
nsslapd-plugintype: pwdstoragescheme
nsslapd-pluginenabled: on
dn: cn=DES,cn=Password Storage Schemes,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: DES
nsslapd-pluginpath: libdes-plugin
nsslapd-plugininitfunc: des_init
nsslapd-plugintype: reverpwdstoragescheme
nsslapd-pluginenabled: on
nsslapd-pluginarg0: nsmultiplexorcredentials
nsslapd-pluginarg1: nsds5ReplicaCredentials
nsslapd-pluginid: des-storage-scheme
dn: cn=Case Ignore String Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Case Ignore String Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: cis_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=Case Exact String Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Case Exact String Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: ces_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=Space Insensitive String Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Space Insensitive String Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: sicis_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=Binary Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Binary Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: bin_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=Octet String Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Octet String Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: octetstring_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=Boolean Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Boolean Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: boolean_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=Generalized Time Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Generalized Time Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: time_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=Telephone Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Telephone Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: tel_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=Integer Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Integer Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: int_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=Distinguished Name Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Distinguished Name Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: dn_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=OID Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: OID Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: oid_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=URI Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: URI Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: uri_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=JPEG Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: JPEG Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: jpeg_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=Country String Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Country String Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: country_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=Postal Address Syntax,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Postal Address Syntax
nsslapd-pluginpath: libsyntax-plugin
nsslapd-plugininitfunc: postal_init
nsslapd-plugintype: syntax
nsslapd-pluginenabled: on
dn: cn=State Change Plugin,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: State Change Plugin
nsslapd-pluginpath: libstatechange-plugin
nsslapd-plugininitfunc: statechange_init
nsslapd-plugintype: postoperation
nsslapd-pluginenabled: on
dn: cn=Roles Plugin,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Roles Plugin
nsslapd-pluginpath: libroles-plugin
nsslapd-plugininitfunc: roles_init
nsslapd-plugintype: object
nsslapd-pluginenabled: on
nsslapd-plugin-depends-on-type: database
nsslapd-plugin-depends-on-named: State Change Plugin
nsslapd-plugin-depends-on-named: Views
dn: cn=ACL Plugin,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: ACL Plugin
nsslapd-pluginpath: libacl-plugin
nsslapd-plugininitfunc: acl_init
nsslapd-plugintype: accesscontrol
nsslapd-pluginenabled: on
nsslapd-plugin-depends-on-type: database
dn: cn=ACL preoperation,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: ACL preoperation
nsslapd-pluginpath: libacl-plugin
nsslapd-plugininitfunc: acl_preopInit
nsslapd-plugintype: preoperation
nsslapd-pluginenabled: on
nsslapd-plugin-depends-on-type: database
dn: cn=Legacy Replication Plugin,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Legacy Replication Plugin
nsslapd-pluginpath: libreplication-plugin
nsslapd-plugininitfunc: replication_legacy_plugin_init
nsslapd-plugintype: object
nsslapd-pluginenabled: on
nsslapd-plugin-depends-on-type: database
nsslapd-plugin-depends-on-named: Multimaster Replication Plugin
nsslapd-plugin-depends-on-named: Class of Service
dn: cn=Multimaster Replication Plugin,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Multimaster Replication Plugin
nsslapd-pluginpath: libreplication-plugin
nsslapd-plugininitfunc: replication_multimaster_plugin_init
nsslapd-plugintype: object
nsslapd-pluginenabled: on
nsslapd-plugin-depends-on-named: ldbm database
nsslapd-plugin-depends-on-named: DES
nsslapd-plugin-depends-on-named: Class of Service
dn: cn=Retro Changelog Plugin,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Retro Changelog Plugin
nsslapd-pluginpath: libretrocl-plugin
nsslapd-plugininitfunc: retrocl_plugin_init
nsslapd-plugintype: object
nsslapd-pluginenabled: off
nsslapd-plugin-depends-on-type: database
nsslapd-plugin-depends-on-named: Class of Service
dn: cn=Class of Service,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Class of Service
nsslapd-pluginpath: libcos-plugin
nsslapd-plugininitfunc: cos_init
nsslapd-plugintype: object
nsslapd-pluginenabled: on
nsslapd-plugin-depends-on-type: database
nsslapd-plugin-depends-on-named: State Change Plugin
nsslapd-plugin-depends-on-named: Views
dn: cn=Views,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Views
nsslapd-pluginpath: libviews-plugin
nsslapd-plugininitfunc: views_init
nsslapd-plugintype: object
nsslapd-pluginenabled: on
nsslapd-plugin-depends-on-type: database
nsslapd-plugin-depends-on-named: State Change Plugin
dn: cn=referential integrity postoperation,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: referential integrity postoperation
nsslapd-pluginpath: libreferint-plugin
nsslapd-plugininitfunc: referint_postop_init
nsslapd-plugintype: postoperation
nsslapd-pluginenabled: off
nsslapd-pluginArg0: 0
nsslapd-pluginArg1: %log_dir%/referint
nsslapd-pluginArg2: 0
nsslapd-pluginArg3: member
nsslapd-pluginArg4: uniquemember
nsslapd-pluginArg5: owner
nsslapd-pluginArg6: seeAlso
nsslapd-plugin-depends-on-type: database
dn: cn=attribute uniqueness,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: attribute uniqueness
nsslapd-pluginpath: libattr-unique-plugin
nsslapd-plugininitfunc: NSUniqueAttr_Init
nsslapd-plugintype: preoperation
nsslapd-pluginenabled: off
nsslapd-pluginarg0: uid
nsslapd-pluginarg1: %ds_suffix%
nsslapd-plugin-depends-on-type: database
dn: cn=7-bit check,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: 7-bit check
nsslapd-pluginpath: libattr-unique-plugin
nsslapd-plugininitfunc: NS7bitAttr_Init
nsslapd-plugintype: preoperation
nsslapd-pluginenabled: on
nsslapd-pluginarg0: uid
nsslapd-pluginarg1: mail
nsslapd-pluginarg2: userpassword
nsslapd-pluginarg3: ,
nsslapd-pluginarg4: %ds_suffix%
nsslapd-plugin-depends-on-type: database
dn: cn=Internationalization Plugin,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Internationalization Plugin
nsslapd-pluginpath: libcollation-plugin
nsslapd-plugininitfunc: orderingRule_init
nsslapd-plugintype: matchingRule
nsslapd-pluginenabled: on
nsslapd-pluginarg0: @configdir(a)/slapd-collations.conf
dn: cn=HTTP Client,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: HTTP Client
nsslapd-pluginpath: libhttp-client-plugin
nsslapd-plugininitfunc: http_client_init
nsslapd-plugintype: preoperation
nsslapd-pluginenabled: on
nsslapd-plugin-depends-on-type: database
dn: cn=Pass Through Authentication,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: Pass Through Authentication
nsslapd-pluginpath: libpassthru-plugin
nsslapd-plugininitfunc: passthruauth_init
nsslapd-plugintype: preoperation
nsslapd-pluginenabled: off
nsslapd-plugin-depends-on-type: database
dn: cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: ldbm database
nsslapd-pluginpath: libback-ldbm
nsslapd-plugininitfunc: ldbm_back_init
nsslapd-plugintype: database
nsslapd-pluginenabled: on
nsslapd-plugin-depends-on-type: Syntax
nsslapd-plugin-depends-on-type: matchingRule
dn: cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: extensibleObject
cn: config
nsslapd-mode: 600
nsslapd-directory: %db_dir%
dn: cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: extensibleObject
cn: default indexes
dn: cn=aci,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: aci
nssystemindex: true
nsindextype: pres
dn: cn=cn,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: cn
nssystemindex: false
nsindextype: pres
nsindextype: eq
nsindextype: sub
dn: cn=entrydn,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: entrydn
nssystemindex: true
nsindextype: eq
dn: cn=givenName,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: givenName
nssystemindex: false
nsindextype: pres
nsindextype: eq
nsindextype: sub
dn: cn=mail,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: mail
nssystemindex: false
nsindextype: pres
nsindextype: eq
nsindextype: sub
dn: cn=mailAlternateAddress,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: mailAlternateAddress
nssystemindex: false
nsindextype: eq
dn: cn=mailHost,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: mailHost
nssystemindex: false
nsindextype: eq
dn: cn=member,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: member
nssystemindex: false
nsindextype: eq
dn: cn=nsCalXItemId,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: nsCalXItemId
nssystemindex: false
nsindextype: pres
nsindextype: eq
nsindextype: sub
dn: cn=nsLIProfileName,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: nsLIProfileName
nssystemindex: false
nsindextype: eq
dn: cn=nsUniqueId,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: nsUniqueId
nssystemindex: true
nsindextype: eq
dn: cn=nswcalCALID,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: nswcalCALID
nssystemindex: false
nsindextype: eq
dn: cn=numsubordinates,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: numsubordinates
nssystemindex: true
nsindextype: pres
dn: cn=objectclass,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: objectclass
nssystemindex: true
nsindextype: eq
dn: cn=owner,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: owner
nssystemindex: false
nsindextype: eq
dn: cn=parentid,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: parentid
nssystemindex: true
nsindextype: eq
dn: cn=pipstatus,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: pipstatus
nssystemindex: false
nsindextype: eq
dn: cn=pipuid,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: pipuid
nssystemindex: false
nsindextype: pres
dn: cn=seeAlso,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: seeAlso
nssystemindex: false
nsindextype: eq
dn: cn=sn,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: sn
nssystemindex: false
nsindextype: pres
nsindextype: eq
nsindextype: sub
dn: cn=telephoneNumber,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: telephoneNumber
nssystemindex: false
nsindextype: pres
nsindextype: eq
nsindextype: sub
dn: cn=uid,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: uid
nssystemindex: false
nsindextype: eq
dn: cn=ntUniqueId,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: ntUniqueId
nssystemindex: false
nsindextype: eq
dn: cn=ntUserDomainId,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: ntUserDomainId
nssystemindex: false
nsindextype: eq
dn: cn=uniquemember,cn=default indexes, cn=config,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: nsIndex
cn: uniquemember
nssystemindex: false
nsindextype: eq
dn: cn=monitor, cn=ldbm database, cn=plugins, cn=config
objectclass: top
objectclass: extensibleObject
cn: monitor
dn: cn=database, cn=monitor, cn=ldbm database, cn=plugins, cn=config
objectclass: top
objectclass: extensibleObject
cn: database
dn: cn=chaining database,cn=plugins,cn=config
objectclass: top
objectclass: nsSlapdPlugin
objectclass: extensibleObject
cn: chaining database
nsslapd-pluginpath: libchainingdb-plugin
nsslapd-plugininitfunc: chaining_back_init
nsslapd-plugintype: database
nsslapd-pluginenabled: on
dn: cn=config,cn=chaining database,cn=plugins,cn=config
objectclass: top
objectclass: extensibleObject
cn: config
nsTransmittedControls: 2.16.840.1.113730.3.4.2
nsTransmittedControls: 2.16.840.1.113730.3.4.9
nsTransmittedControls: 1.2.840.113556.1.4.473
nsTransmittedControls: 1.3.6.1.4.1.1466.29539.12
nsPossibleChainingComponents: cn=resource limits,cn=components,cn=config
nsPossibleChainingComponents: cn=certificate-based authentication,cn=components,cn=config
nsPossibleChainingComponents: cn=ACL Plugin,cn=plugins,cn=config
nsPossibleChainingComponents: cn=old plugin,cn=plugins,cn=config
nsPossibleChainingComponents: cn=referential integrity postoperation,cn=plugins,cn=config
nsPossibleChainingComponents: cn=attribute uniqueness,cn=plugins,cn=config
dn: cn=mapping tree,cn=config
objectclass: top
objectclass: extensibleObject
cn: mapping tree
dn: cn=tasks,cn=config
objectclass: top
objectclass: extensibleObject
cn: tasks
--- NEW FILE template-suffix-db.ldif.in ---
# replace the Suffix token with your suffix e.g. dc=example,dc=com
# replace the bename token with your backend name e.g. userRoot
dn: cn=%ds_bename%,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: extensibleObject
objectclass: nsBackendInstance
nsslapd-suffix: %ds_suffix%
cn: %ds_bename%
dn: cn="%ds_suffix%",cn=mapping tree,cn=config
objectclass: top
objectclass: extensibleObject
objectclass: nsMappingTree
cn: "%ds_suffix%"
nsslapd-state: backend
nsslapd-backend: %ds_bename%
16 years, 10 months
[Fedora-directory-commits] ldapserver Makefile.am, 1.43, 1.44 configure.ac, 1.31, 1.32 aclocal.m4, 1.36, 1.37 configure, 1.47, 1.48 missing, 1.27, 1.28 install-sh, 1.27, 1.28 depcomp, 1.27, 1.28 compile, 1.27, 1.28 Makefile.in, 1.52, 1.53 config.sub, 1.26, 1.27 config.guess, 1.26, 1.27
by Doctor Conrad
Author: rmeggins
Update of /cvs/dirsec/ldapserver
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv14112/ldapserver
Modified Files:
Makefile.am configure.ac aclocal.m4 configure missing
install-sh depcomp compile Makefile.in config.sub config.guess
Log Message:
Resolves: bug 237356
Description: Move DS Admin Code into Admin Server - ldif templates, pwdhash
Reviewed by: nhosoi (Thanks!)
Fix Description: These changes are primarily to allow the admin server setup to run completely in perl with no more setuputil code.
1) Added LDIF templates for DS config. template-dse.ldif is the core minimal directory server configuration. Values can be replaced with parameters in the same style as used with register_server.pl - %token%. For the plugin entries, the plugin shared library name is now just a name. There is no more full path. The code in dynalib.c handles this case by using the compiled in PLUGINDIR. The NSPR function PR_GetLibraryName knows the correct shared lib suffix for the platform. All of this allows us to do 2).
2) Added ability to run pwdhash with no server configuration. If no configuration is given, it uses the template-dse.ldif above. And instead of having to worry about where the plugins are installed and the shared lib suffix, it just depends on the above changes. This allows us to generate password hashes during setup before the directory server instance is created, and also to keep clear text password usage to a minimum.
3) Added defaultuser and defaultgroup.
4) Added support for continuation lines in Inf files.
5) All user visible messages during setup should be localizable
Platforms tested: RHEL4
Flag Day: Yes, autotool file changes.
Doc impact: Yes, along with the previous fixes for this bug.
Index: Makefile.am
===================================================================
RCS file: /cvs/dirsec/ldapserver/Makefile.am,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -r1.43 -r1.44
--- Makefile.am 15 Jun 2007 17:02:28 -0000 1.43
+++ Makefile.am 19 Jun 2007 18:24:57 -0000 1.44
@@ -1,10 +1,15 @@
# look for included m4 files in the ./m4/ directory
ACLOCAL_AMFLAGS = -I m4
+NULLSTRING :=
+SPACE := $(NULLSTRING) # the space is between the ) and the #
+COLON := $(NULLSTRING):# a colon
+QUOTE := $(NULLSTRING)"# a double quote"
#------------------------
# Compiler Flags
#------------------------
BUILDNUM := $(shell perl $(srcdir)/buildnum.pl)
+NQBUILDNUM := $(subst \,,$(subst $(QUOTE),,$(BUILDNUM)))
DEBUG_DEFINES = @debug_defs@
DS_DEFINES = -DBUILD_NUM=$(BUILDNUM)
DS_INCLUDES = -I$(srcdir)/ldap/include -I$(srcdir)/ldap/servers/slapd -I$(srcdir)/include -I.
@@ -21,7 +26,7 @@
PATH_DEFINES = -DLOCALSTATEDIR="\"$(localstatedir)\"" -DSYSCONFDIR="\"$(sysconfdir)\"" \
-DLIBDIR="\"$(libdir)\"" -DBINDIR="\"$(bindir)\"" \
-DDATADIR="\"$(datadir)\"" -DDOCDIR="\"$(docdir)\"" \
- -DSBINDIR="\"$(sbindir)\"" -DPLUGINDIR="\"$(serverplugindir)\""
+ -DSBINDIR="\"$(sbindir)\"" -DPLUGINDIR="\"$(serverplugindir)\"" -DTEMPLATEDIR="\"$(sampledatadir)\""
AM_CPPFLAGS = $(DEBUG_DEFINES) $(DS_DEFINES) $(DS_INCLUDES) $(PATH_DEFINES)
PLUGIN_CPPFLAGS = $(AM_CPPFLAGS) @ldapsdk_inc@ @nss_inc@ @nspr_inc@
@@ -77,7 +82,8 @@
perldir = $(libdir)@perldir@
infdir = $(datadir)@infdir@
-shared_lib_suffix = @shared_lib_suffix@
+defaultuser=@defaultuser@
+defaultgroup=@defaultgroup@
#------------------------
# Build Products
@@ -131,6 +137,14 @@
$(srcdir)/ldap/ldif/roledit.ldif \
$(srcdir)/ldap/ldif/tasks.ldif \
$(srcdir)/ldap/ldif/template.ldif \
+ ldap/ldif/template-dse.ldif \
+ ldap/ldif/template-suffix-db.ldif \
+ ldap/ldif/template-ldapi.ldif \
+ ldap/ldif/template-ldapi-default.ldif \
+ ldap/ldif/template-ldapi-autobind.ldif \
+ ldap/ldif/template-pampta.ldif \
+ ldap/ldif/template-dnaplugin.ldif \
+ ldap/ldif/template-bitwise.ldif \
$(srcdir)/ldap/servers/slapd/tools/rsearch/scripts/dbgen-FamilyNames \
$(srcdir)/ldap/servers/slapd/tools/rsearch/scripts/dbgen-GivenNames \
$(srcdir)/ldap/servers/slapd/tools/rsearch/scripts/dbgen-OrgUnits
@@ -1024,8 +1038,10 @@
-e 's,@vendor\@,$(vendor),g' \
-e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
-e 's,@BUILDNUM\@,$(BUILDNUM),g' \
+ -e 's,@NQBUILD_NUM\@,$(NQBUILDNUM),g' \
-e 's,@perldir\@,$(perldir),g' \
- -e 's,@shared_lib_suffix\@,$(shared_lib_suffix),g'
+ -e 's,@defaultuser\@,$(defaultuser),g' \
+ -e 's,@defaultgroup\@,$(defaultgroup),g'
else
fixupcmd = sed \
-e 's,@bindir\@,$(bindir),g' \
@@ -1057,8 +1073,10 @@
-e 's,@vendor\@,$(vendor),g' \
-e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
-e 's,@BUILDNUM\@,$(BUILDNUM),g' \
+ -e 's,@NQBUILD_NUM\@,$(NQBUILDNUM),g' \
-e 's,@perldir\@,$(perldir),g' \
- -e 's,@shared_lib_suffix\@,$(shared_lib_suffix),g'
+ -e 's,@defaultuser\@,$(defaultuser),g' \
+ -e 's,@defaultgroup\@,$(defaultgroup),g'
endif
%: %.in
Index: configure.ac
===================================================================
RCS file: /cvs/dirsec/ldapserver/configure.ac,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- configure.ac 15 Jun 2007 17:02:29 -0000 1.31
+++ configure.ac 19 Jun 2007 18:24:57 -0000 1.32
@@ -197,6 +197,10 @@
# relative to libdir
perldir=/$PACKAGE_NAME/perl
+# default user, group
+defaultuser=nobody
+defaultgroup=nobody
+
AC_SUBST(configdir)
AC_SUBST(sampledatadir)
AC_SUBST(propertydir)
@@ -207,6 +211,9 @@
AC_SUBST(perldir)
AC_SUBST(infdir)
+AC_SUBST(defaultuser)
+AC_SUBST(defaultgroup)
+
# check for --with-instconfigdir
AC_MSG_CHECKING(for --with-instconfigdir)
AC_ARG_WITH(instconfigdir,
@@ -228,7 +235,6 @@
# cygnus, mingw, or the like and using cmd.exe as the shell
AM_CONDITIONAL([WINNT], false)
-shared_lib_suffix=.so
# Deal with platform dependent defines
# relative to sysconfdir
initdir=/rc.d
@@ -266,7 +272,6 @@
AC_DEFINE([OS_hpux], [1], [OS HP-UX])
AC_DEFINE([_POSIX_C_SOURCE], [199506L], [POSIX revision])
AC_DEFINE([_HPUX_SOURCE], [1], [Source namespace])
- shared_lib_suffix=.sl
platform="hpux"
;;
sparc-sun-solaris*)
@@ -302,7 +307,6 @@
;;
esac
AC_SUBST(initdir)
-AC_SUBST(shared_lib_suffix)
AM_CONDITIONAL(HPUX,test "$platform" = "hpux")
AM_CONDITIONAL(SOLARIS,test "$platform" = "solaris")
Index: aclocal.m4
===================================================================
RCS file: /cvs/dirsec/ldapserver/aclocal.m4,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- aclocal.m4 15 Jun 2007 17:02:29 -0000 1.36
+++ aclocal.m4 19 Jun 2007 18:24:57 -0000 1.37
@@ -1578,10 +1578,27 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '[#]line __oline__ "configure"' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -4288,6 +4305,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$_LT_AC_TAGVAR(GCC, $1)
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -4421,11 +4441,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1)
+predep_objects=\`echo $lt_[]_LT_AC_TAGVAR(predep_objects, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1)
+postdep_objects=\`echo $lt_[]_LT_AC_TAGVAR(postdep_objects, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -4437,7 +4457,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
+compiler_lib_search_path=\`echo $lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -4517,7 +4537,7 @@
link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1)
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -6353,6 +6373,7 @@
done
done
done
+IFS=$as_save_IFS
lt_ac_max=0
lt_ac_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
@@ -6385,6 +6406,7 @@
done
])
SED=$lt_cv_path_SED
+AC_SUBST([SED])
AC_MSG_RESULT([$SED])
])
Index: configure
===================================================================
RCS file: /cvs/dirsec/ldapserver/configure,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -r1.47 -r1.48
--- configure 15 Jun 2007 17:02:29 -0000 1.47
+++ configure 19 Jun 2007 18:24:57 -0000 1.48
@@ -465,7 +465,7 @@
#endif"
ac_default_prefix=/opt/$PACKAGE_NAME
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT build build_cpu build_vendor build_os host host_cpu host_vendor host_os CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CC CFLAGS ac_ct_CC CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CX!
XCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBOBJS debug_defs BUNDLE_TRUE BUNDLE_FALSE enable_pam_passthru_TRUE enable_pam_passthru_FALSE enable_dna_TRUE enable_dna_FALSE enable_ldapi_TRUE enable_ldapi_FALSE enable_bitwise_TRUE enable_bitwise_FALSE configdir sampledatadir propertydir schemadir serverdir serverplugindir scripttemplatedir perldir infdir instconfigdir WINNT_TRUE WINNT_FALSE LIBSOCKET LIBNSL LIBDL LIBCSTD LIBCRUN initdir shared_lib_suffix HPUX_TRUE HPUX_FALSE SOLARIS_TRUE SOLARIS_FALSE PKG_CONFIG ICU_CONFIG NETSNMP_CONFIG nspr_inc nspr_lib nspr_libdir nss_inc nss_lib nss_libdir ldapsdk_inc ldapsdk_lib ldapsdk_libdir ldapsdk_bindir db_inc db_incdir db_lib db_libdir db_bindir db_libver sasl_inc sasl_lib sasl_libdir svrcore_inc svrcore_lib icu_lib icu_inc icu_bin netsnmp_inc netsnmp_lib netsnmp_libdir netsnmp_link brand capbrand vendor LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT build build_cpu build_vendor build_os host host_cpu host_vendor host_os CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CC CFLAGS ac_ct_CC CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE SED EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CP!
P CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBOBJS debug_defs BUNDLE_TRUE BUNDLE_FALSE enable_pam_passthru_TRUE enable_pam_passthru_FALSE enable_dna_TRUE enable_dna_FALSE enable_ldapi_TRUE enable_ldapi_FALSE enable_bitwise_TRUE enable_bitwise_FALSE configdir sampledatadir propertydir schemadir serverdir serverplugindir scripttemplatedir perldir infdir defaultuser defaultgroup instconfigdir WINNT_TRUE WINNT_FALSE LIBSOCKET LIBNSL LIBDL LIBCSTD LIBCRUN initdir HPUX_TRUE HPUX_FALSE SOLARIS_TRUE SOLARIS_FALSE PKG_CONFIG ICU_CONFIG NETSNMP_CONFIG nspr_inc nspr_lib nspr_libdir nss_inc nss_lib nss_libdir ldapsdk_inc ldapsdk_lib ldapsdk_libdir ldapsdk_bindir db_inc db_incdir db_lib db_libdir db_bindir db_libver sasl_inc sasl_lib sasl_libdir svrcore_inc svrcore_lib icu_lib icu_inc icu_bin netsnmp_inc netsnmp_lib netsnmp_libdir netsnmp_link brand capbrand vendor LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -3836,6 +3836,7 @@
done
done
done
+IFS=$as_save_IFS
lt_ac_max=0
lt_ac_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
@@ -3870,6 +3871,7 @@
fi
SED=$lt_cv_path_SED
+
echo "$as_me:$LINENO: result: $SED" >&5
echo "${ECHO_T}$SED" >&6
@@ -4310,7 +4312,7 @@
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 4313 "configure"' > conftest.$ac_ext
+ echo '#line 4315 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -5445,7 +5447,7 @@
# Provide some information about the compiler.
-echo "$as_me:5448:" \
+echo "$as_me:5450:" \
"checking for Fortran 77 compiler version" >&5
ac_compiler=`set X $ac_compile; echo $2`
{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
@@ -6508,11 +6510,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6511: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6513: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:6515: \$? = $ac_status" >&5
+ echo "$as_me:6517: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -6776,11 +6778,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6779: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6781: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:6783: \$? = $ac_status" >&5
+ echo "$as_me:6785: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -6880,11 +6882,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6883: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6885: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:6887: \$? = $ac_status" >&5
+ echo "$as_me:6889: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -8345,10 +8347,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 8354 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -9225,7 +9248,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 9228 "configure"
+#line 9251 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -9325,7 +9348,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 9328 "configure"
+#line 9351 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -9656,6 +9679,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -9789,11 +9815,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects
+predep_objects=\`echo $lt_predep_objects | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects
+postdep_objects=\`echo $lt_postdep_objects | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -9805,7 +9831,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -9885,7 +9911,7 @@
link_all_deplibs=$link_all_deplibs
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -11665,11 +11691,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11668: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11694: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:11672: \$? = $ac_status" >&5
+ echo "$as_me:11698: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -11769,11 +11795,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11772: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11798: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:11776: \$? = $ac_status" >&5
+ echo "$as_me:11802: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -12301,10 +12327,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 12334 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -12688,6 +12735,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_CXX
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -12821,11 +12871,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_CXX
+predep_objects=\`echo $lt_predep_objects_CXX | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_CXX
+postdep_objects=\`echo $lt_postdep_objects_CXX | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -12837,7 +12887,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_CXX
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_CXX | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -12917,7 +12967,7 @@
link_all_deplibs=$link_all_deplibs_CXX
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -13339,11 +13389,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13342: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13392: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:13346: \$? = $ac_status" >&5
+ echo "$as_me:13396: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -13443,11 +13493,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13446: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13496: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:13450: \$? = $ac_status" >&5
+ echo "$as_me:13500: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -14888,10 +14938,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 14945 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -15275,6 +15346,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_F77
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -15408,11 +15482,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_F77
+predep_objects=\`echo $lt_predep_objects_F77 | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_F77
+postdep_objects=\`echo $lt_postdep_objects_F77 | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -15424,7 +15498,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_F77
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_F77 | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -15504,7 +15578,7 @@
link_all_deplibs=$link_all_deplibs_F77
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -15646,11 +15720,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15649: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15723: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15653: \$? = $ac_status" >&5
+ echo "$as_me:15727: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -15914,11 +15988,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15917: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15991: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15921: \$? = $ac_status" >&5
+ echo "$as_me:15995: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -16018,11 +16092,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:16021: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16095: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:16025: \$? = $ac_status" >&5
+ echo "$as_me:16099: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -17483,10 +17557,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 17564 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -17870,6 +17965,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_GCJ
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -18003,11 +18101,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_GCJ
+predep_objects=\`echo $lt_predep_objects_GCJ | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_GCJ
+postdep_objects=\`echo $lt_postdep_objects_GCJ | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -18019,7 +18117,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_GCJ
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_GCJ | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -18099,7 +18197,7 @@
link_all_deplibs=$link_all_deplibs_GCJ
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -18351,6 +18449,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_RC
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -18484,11 +18585,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_RC
+predep_objects=\`echo $lt_predep_objects_RC | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_RC
+postdep_objects=\`echo $lt_postdep_objects_RC | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -18500,7 +18601,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_RC
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_RC | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -18580,7 +18681,7 @@
link_all_deplibs=$link_all_deplibs_RC
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -23088,6 +23189,13 @@
# relative to libdir
perldir=/$PACKAGE_NAME/perl
+# default user, group
+defaultuser=nobody
+defaultgroup=nobody
+
+
+
+
@@ -23133,7 +23241,6 @@
fi
-shared_lib_suffix=.so
# Deal with platform dependent defines
# relative to sysconfdir
initdir=/rc.d
@@ -23267,7 +23374,6 @@
#define _HPUX_SOURCE 1
_ACEOF
- shared_lib_suffix=.sl
platform="hpux"
;;
sparc-sun-solaris*)
@@ -23353,7 +23459,6 @@
-
if test "$platform" = "hpux"; then
HPUX_TRUE=
HPUX_FALSE='#'
@@ -25889,6 +25994,7 @@
s,@CCDEPMODE@,$CCDEPMODE,;t t
s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t
s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t
+s,@SED@,$SED,;t t
s,@EGREP@,$EGREP,;t t
s,@LN_S@,$LN_S,;t t
s,@ECHO@,$ECHO,;t t
@@ -25923,6 +26029,8 @@
s,@scripttemplatedir@,$scripttemplatedir,;t t
s,@perldir@,$perldir,;t t
s,@infdir@,$infdir,;t t
+s,@defaultuser@,$defaultuser,;t t
+s,@defaultgroup@,$defaultgroup,;t t
s,@instconfigdir@,$instconfigdir,;t t
s,@WINNT_TRUE@,$WINNT_TRUE,;t t
s,@WINNT_FALSE@,$WINNT_FALSE,;t t
@@ -25932,7 +26040,6 @@
s,@LIBCSTD@,$LIBCSTD,;t t
s,@LIBCRUN@,$LIBCRUN,;t t
s,@initdir@,$initdir,;t t
-s,@shared_lib_suffix@,$shared_lib_suffix,;t t
s,@HPUX_TRUE@,$HPUX_TRUE,;t t
s,@HPUX_FALSE@,$HPUX_FALSE,;t t
s,@SOLARIS_TRUE@,$SOLARIS_TRUE,;t t
Index: Makefile.in
===================================================================
RCS file: /cvs/dirsec/ldapserver/Makefile.in,v
retrieving revision 1.52
retrieving revision 1.53
diff -u -r1.52 -r1.53
--- Makefile.in 15 Jun 2007 20:22:14 -0000 1.52
+++ Makefile.in 19 Jun 2007 18:24:57 -0000 1.53
@@ -876,6 +876,7 @@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
RANLIB = @RANLIB@
+SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SOLARIS_FALSE = @SOLARIS_FALSE@
@@ -920,6 +921,8 @@
db_libdir = @db_libdir@
db_libver = @db_libver@
debug_defs = @debug_defs@
+defaultgroup = @defaultgroup@
+defaultuser = @defaultuser@
enable_bitwise_FALSE = @enable_bitwise_FALSE@
enable_bitwise_TRUE = @enable_bitwise_TRUE@
enable_dna_FALSE = @enable_dna_FALSE@
@@ -976,7 +979,6 @@
scripttemplatedir = @scripttemplatedir@
serverdir = $(libdir)@serverdir@
serverplugindir = $(libdir)@serverplugindir@
-shared_lib_suffix = @shared_lib_suffix@
sharedstatedir = @sharedstatedir@
svrcore_inc = @svrcore_inc@
svrcore_lib = @svrcore_lib@
@@ -986,11 +988,16 @@
# look for included m4 files in the ./m4/ directory
ACLOCAL_AMFLAGS = -I m4
+NULLSTRING :=
+SPACE := $(NULLSTRING) # the space is between the ) and the #
+COLON := $(NULLSTRING):# a colon
+QUOTE := $(NULLSTRING)"# a double quote"
#------------------------
# Compiler Flags
#------------------------
BUILDNUM := $(shell perl $(srcdir)/buildnum.pl)
+NQBUILDNUM := $(subst \,,$(subst $(QUOTE),,$(BUILDNUM)))
DEBUG_DEFINES = @debug_defs@
DS_DEFINES = -DBUILD_NUM=$(BUILDNUM)
DS_INCLUDES = -I$(srcdir)/ldap/include -I$(srcdir)/ldap/servers/slapd -I$(srcdir)/include -I.
@@ -1007,7 +1014,7 @@
PATH_DEFINES = -DLOCALSTATEDIR="\"$(localstatedir)\"" -DSYSCONFDIR="\"$(sysconfdir)\"" \
-DLIBDIR="\"$(libdir)\"" -DBINDIR="\"$(bindir)\"" \
-DDATADIR="\"$(datadir)\"" -DDOCDIR="\"$(docdir)\"" \
- -DSBINDIR="\"$(sbindir)\"" -DPLUGINDIR="\"$(serverplugindir)\""
+ -DSBINDIR="\"$(sbindir)\"" -DPLUGINDIR="\"$(serverplugindir)\"" -DTEMPLATEDIR="\"$(sampledatadir)\""
AM_CPPFLAGS = $(DEBUG_DEFINES) $(DS_DEFINES) $(DS_INCLUDES) $(PATH_DEFINES)
PLUGIN_CPPFLAGS = $(AM_CPPFLAGS) @ldapsdk_inc@ @nss_inc@ @nspr_inc@
@@ -1066,6 +1073,14 @@
$(srcdir)/ldap/ldif/roledit.ldif \
$(srcdir)/ldap/ldif/tasks.ldif \
$(srcdir)/ldap/ldif/template.ldif \
+ ldap/ldif/template-dse.ldif \
+ ldap/ldif/template-suffix-db.ldif \
+ ldap/ldif/template-ldapi.ldif \
+ ldap/ldif/template-ldapi-default.ldif \
+ ldap/ldif/template-ldapi-autobind.ldif \
+ ldap/ldif/template-pampta.ldif \
+ ldap/ldif/template-dnaplugin.ldif \
+ ldap/ldif/template-bitwise.ldif \
$(srcdir)/ldap/servers/slapd/tools/rsearch/scripts/dbgen-FamilyNames \
$(srcdir)/ldap/servers/slapd/tools/rsearch/scripts/dbgen-GivenNames \
$(srcdir)/ldap/servers/slapd/tools/rsearch/scripts/dbgen-OrgUnits
@@ -1918,8 +1933,10 @@
@BUNDLE_FALSE@ -e 's,@vendor\@,$(vendor),g' \
@BUNDLE_FALSE@ -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
@BUNDLE_FALSE@ -e 's,@BUILDNUM\@,$(BUILDNUM),g' \
+@BUNDLE_FALSE@ -e 's,@NQBUILD_NUM\@,$(NQBUILDNUM),g' \
@BUNDLE_FALSE@ -e 's,@perldir\@,$(perldir),g' \
-@BUNDLE_FALSE@ -e 's,@shared_lib_suffix\@,$(shared_lib_suffix),g'
+@BUNDLE_FALSE@ -e 's,@defaultuser\@,$(defaultuser),g' \
+@BUNDLE_FALSE@ -e 's,@defaultgroup\@,$(defaultgroup),g'
# these are for the config files and scripts that we need to generate and replace
@@ -1958,8 +1975,10 @@
@BUNDLE_TRUE@ -e 's,@vendor\@,$(vendor),g' \
@BUNDLE_TRUE@ -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
@BUNDLE_TRUE@ -e 's,@BUILDNUM\@,$(BUILDNUM),g' \
+@BUNDLE_TRUE@ -e 's,@NQBUILD_NUM\@,$(NQBUILDNUM),g' \
@BUNDLE_TRUE@ -e 's,@perldir\@,$(perldir),g' \
-@BUNDLE_TRUE@ -e 's,@shared_lib_suffix\@,$(shared_lib_suffix),g'
+@BUNDLE_TRUE@ -e 's,@defaultuser\@,$(defaultuser),g' \
+@BUNDLE_TRUE@ -e 's,@defaultgroup\@,$(defaultgroup),g'
all: $(BUILT_SOURCES) config.h
$(MAKE) $(AM_MAKEFLAGS) all-am
16 years, 10 months
[Fedora-directory-commits] adminserver/admserv/schema/ldif 00nsroot_backend.ldif.tmpl, 1.1, 1.2
by Doctor Conrad
Author: nhosoi
Update of /cvs/dirsec/adminserver/admserv/schema/ldif
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv19938/admserv/schema/ldif
Modified Files:
00nsroot_backend.ldif.tmpl
Log Message:
Resolves: #237356
Summary: Move DS Admin Code into Admin Server (comment #72)
Index: 00nsroot_backend.ldif.tmpl
===================================================================
RCS file: /cvs/dirsec/adminserver/admserv/schema/ldif/00nsroot_backend.ldif.tmpl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 00nsroot_backend.ldif.tmpl 13 Jun 2007 17:48:35 -0000 1.1
+++ 00nsroot_backend.ldif.tmpl 18 Jun 2007 17:14:50 -0000 1.2
@@ -1,3 +1,13 @@
+dn: cn=NetscapeRoot, cn=ldbm database, cn=plugins, cn=config
+objectClass: top
+objectClass: extensibleObject
+objectClass: nsBackendInstance
+cn: NetscapeRoot
+nsslapd-suffix: o=NetscapeRoot
+nsslapd-cachesize: -1
+nsslapd-cachememsize: 10485760
+nsslapd-directory: NetscapeRoot
+
dn: cn="o=NetscapeRoot",cn=mapping tree,cn=config
objectClass: top
objectClass: extensibleObject
16 years, 11 months
[Fedora-directory-commits] adminserver/admserv/newinst/src register_server.pl.in, 1.2, 1.3
by Doctor Conrad
Author: nhosoi
Update of /cvs/dirsec/adminserver/admserv/newinst/src
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv19938/admserv/newinst/src
Modified Files:
register_server.pl.in
Log Message:
Resolves: #237356
Summary: Move DS Admin Code into Admin Server (comment #72)
Index: register_server.pl.in
===================================================================
RCS file: /cvs/dirsec/adminserver/admserv/newinst/src/register_server.pl.in,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- register_server.pl.in 15 Jun 2007 22:16:28 -0000 1.2
+++ register_server.pl.in 18 Jun 2007 17:14:51 -0000 1.3
@@ -58,7 +58,7 @@
use lib "@perldir@";
use Getopt::Std;
-use Net::Domain qw(hostname);
+use Net::Domain qw(hostname hostfqdn);
# PERLDAP modules
use Mozilla::LDAP::Conn;
# Setup Inf module
16 years, 11 months
[Fedora-directory-commits] adminserver/admserv/cfgstuff admserv.conf.in, 1.4, 1.5
by Doctor Conrad
Author: nhosoi
Update of /cvs/dirsec/adminserver/admserv/cfgstuff
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv11786
Modified Files:
admserv.conf.in
Log Message:
Resolves: 237356
Summary: Move DS Admin Code into Admin Server (comment #70)
Description: added "SetEnv LD_LIBRARY_PATH" for the CGIs
Index: admserv.conf.in
===================================================================
RCS file: /cvs/dirsec/adminserver/admserv/cfgstuff/admserv.conf.in,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- admserv.conf.in 15 May 2007 16:45:44 -0000 1.4
+++ admserv.conf.in 15 Jun 2007 22:35:24 -0000 1.5
@@ -29,6 +29,8 @@
ScriptAlias /dist/ "@cgibindir@/"
ScriptAlias /manual/help/ "@cgibindir@/"
+SetEnv LD_LIBRARY_PATH @nss_libdir@:@nspr_libdir@
+
# all access is explicitly denied by default in httpd.conf
# the following Directory directives turn on access for specific
# directories
16 years, 11 months
[Fedora-directory-commits] adminserver Makefile.am, 1.9, 1.10 configure.ac, 1.6, 1.7 aclocal.m4, 1.6, 1.7 configure, 1.8, 1.9 missing, 1.4, 1.5 install-sh, 1.4, 1.5 depcomp, 1.4, 1.5 compile, 1.4, 1.5 Makefile.in, 1.9, 1.10 config.sub, 1.4, 1.5 config.guess, 1.4, 1.5
by Doctor Conrad
Author: rmeggins
Update of /cvs/dirsec/adminserver
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv6427/adminserver
Modified Files:
Makefile.am configure.ac aclocal.m4 configure missing
install-sh depcomp compile Makefile.in config.sub config.guess
Log Message:
Resolves: bug 237356
Bug Description: Move DS Admin Code into Admin Server
Reviewed by: nhosoi (Thanks!)
Fix Description: Move the code out of register_servers.pl in to the DS Util.pm module.
Added the ConfigDSDialogs.
Added code to create the Config DS based on the register_servers code.
Platforms tested: RHEL4
Flag Day: no
Doc impact: Yes, along with the rest of the new setup stuff.
Index: Makefile.am
===================================================================
RCS file: /cvs/dirsec/adminserver/Makefile.am,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- Makefile.am 15 Jun 2007 17:13:02 -0000 1.9
+++ Makefile.am 15 Jun 2007 22:16:28 -0000 1.10
@@ -130,7 +130,10 @@
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 \
@@ -146,7 +149,9 @@
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)
@@ -404,7 +409,9 @@
-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)
Index: configure.ac
===================================================================
RCS file: /cvs/dirsec/adminserver/configure.ac,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- configure.ac 15 Jun 2007 17:13:02 -0000 1.6
+++ configure.ac 15 Jun 2007 22:16:28 -0000 1.7
@@ -123,7 +123,7 @@
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])
Index: aclocal.m4
===================================================================
RCS file: /cvs/dirsec/adminserver/aclocal.m4,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- aclocal.m4 13 Jun 2007 17:48:34 -0000 1.6
+++ aclocal.m4 15 Jun 2007 22:16:28 -0000 1.7
@@ -1578,10 +1578,27 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '[#]line __oline__ "configure"' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -4288,6 +4305,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$_LT_AC_TAGVAR(GCC, $1)
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -4421,11 +4441,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1)
+predep_objects=\`echo $lt_[]_LT_AC_TAGVAR(predep_objects, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1)
+postdep_objects=\`echo $lt_[]_LT_AC_TAGVAR(postdep_objects, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -4437,7 +4457,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
+compiler_lib_search_path=\`echo $lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -4517,7 +4537,7 @@
link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1)
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -6353,6 +6373,7 @@
done
done
done
+IFS=$as_save_IFS
lt_ac_max=0
lt_ac_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
@@ -6385,6 +6406,7 @@
done
])
SED=$lt_cv_path_SED
+AC_SUBST([SED])
AC_MSG_RESULT([$SED])
])
Index: configure
===================================================================
RCS file: /cvs/dirsec/adminserver/configure,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- configure 15 Jun 2007 17:13:02 -0000 1.8
+++ configure 15 Jun 2007 22:16:28 -0000 1.9
@@ -468,7 +468,7 @@
ac_default_prefix=/opt/$PACKAGE_BASE_NAME
ac_subdirs_all="$ac_subdirs_all mod_admserv"
ac_subdirs_all="$ac_subdirs_all mod_restartd"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT build build_cpu build_vendor build_os host host_cpu host_vendor host_os CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CC CFLAGS ac_ct_CC CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CX!
XCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBOBJS initdir shared_lib_suffix HTTPD APXS PKG_CONFIG ICU_CONFIG nsspcache instconfigdir PACKAGE_BASE_NAME nspr_inc nspr_lib nspr_libdir nss_inc nss_lib nss_libdir ldapsdk_inc ldapsdk_lib ldapsdk_libdir adminutil_inc adminutil_lib adminutil_libdir adminutil_ver setuputil_lib setuputil_libdir setuputil_inc setuputil_bin icu_lib icu_libdir icu_inc icu_bin curses_lib instancename cgibindir cmdbindir moddir modnssbindir propertydir htmldir icondir manualdir httpdconf mimemagic httpduser httpdgroup logdir piddir pidfile admservport ldifdir admmoddir nssmoddir infdir perldir brand capbrand vendor WINNT_TRUE WINNT_FALSE APACHE22_TRUE APACHE22_FALSE subdirs MOD_ADMSERV_TRUE MOD_ADMSERV_FALSE MOD_RESTARTD_TRUE MOD_RESTARTD_FALSE LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT build build_cpu build_vendor build_os host host_cpu host_vendor host_os CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CC CFLAGS ac_ct_CC CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE SED EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CP!
P CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBOBJS initdir shared_lib_suffix HTTPD APXS PKG_CONFIG ICU_CONFIG nsspcache instconfigdir PACKAGE_BASE_NAME nspr_inc nspr_lib nspr_libdir nss_inc nss_lib nss_libdir ldapsdk_inc ldapsdk_lib ldapsdk_libdir adminutil_inc adminutil_lib adminutil_libdir adminutil_ver setuputil_lib setuputil_libdir setuputil_inc setuputil_bin icu_lib icu_libdir icu_inc icu_bin curses_lib instancename cgibindir cmdbindir moddir modnssbindir propertydir htmldir icondir manualdir httpdconf mimemagic httpduser httpdgroup logdir piddir pidfile admservport ldifdir admmoddir nssmoddir infdir perldir brand capbrand vendor WINNT_TRUE WINNT_FALSE APACHE22_TRUE APACHE22_FALSE subdirs MOD_ADMSERV_TRUE MOD_ADMSERV_FALSE MOD_RESTARTD_TRUE MOD_RESTARTD_FALSE LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -1072,7 +1072,7 @@
--with-instconfigdir=/path
Base directory for instance specific writable
configuration directories (default
- $sysconfdir/$PACKAGE_NAME)
+ $sysconfdir/$PACKAGE_BASE_NAME)
Some influential environment variables:
CXX C++ compiler command
@@ -3824,6 +3824,7 @@
done
done
done
+IFS=$as_save_IFS
lt_ac_max=0
lt_ac_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
@@ -3858,6 +3859,7 @@
fi
SED=$lt_cv_path_SED
+
echo "$as_me:$LINENO: result: $SED" >&5
echo "${ECHO_T}$SED" >&6
@@ -4298,7 +4300,7 @@
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 4301 "configure"' > conftest.$ac_ext
+ echo '#line 4303 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -5433,7 +5435,7 @@
# Provide some information about the compiler.
-echo "$as_me:5436:" \
+echo "$as_me:5438:" \
"checking for Fortran 77 compiler version" >&5
ac_compiler=`set X $ac_compile; echo $2`
{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
@@ -6496,11 +6498,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6499: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6501: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:6503: \$? = $ac_status" >&5
+ echo "$as_me:6505: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -6764,11 +6766,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6767: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6769: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:6771: \$? = $ac_status" >&5
+ echo "$as_me:6773: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -6868,11 +6870,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6871: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6873: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:6875: \$? = $ac_status" >&5
+ echo "$as_me:6877: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -8333,10 +8335,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 8342 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -9213,7 +9236,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 9216 "configure"
+#line 9239 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -9313,7 +9336,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 9316 "configure"
+#line 9339 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -9644,6 +9667,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -9777,11 +9803,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects
+predep_objects=\`echo $lt_predep_objects | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects
+postdep_objects=\`echo $lt_postdep_objects | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -9793,7 +9819,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -9873,7 +9899,7 @@
link_all_deplibs=$link_all_deplibs
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -11653,11 +11679,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11656: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11682: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:11660: \$? = $ac_status" >&5
+ echo "$as_me:11686: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -11757,11 +11783,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11760: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11786: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:11764: \$? = $ac_status" >&5
+ echo "$as_me:11790: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -12289,10 +12315,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 12322 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -12676,6 +12723,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_CXX
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -12809,11 +12859,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_CXX
+predep_objects=\`echo $lt_predep_objects_CXX | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_CXX
+postdep_objects=\`echo $lt_postdep_objects_CXX | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -12825,7 +12875,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_CXX
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_CXX | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -12905,7 +12955,7 @@
link_all_deplibs=$link_all_deplibs_CXX
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -13327,11 +13377,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13330: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13380: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:13334: \$? = $ac_status" >&5
+ echo "$as_me:13384: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -13431,11 +13481,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13434: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13484: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:13438: \$? = $ac_status" >&5
+ echo "$as_me:13488: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -14876,10 +14926,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 14933 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -15263,6 +15334,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_F77
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -15396,11 +15470,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_F77
+predep_objects=\`echo $lt_predep_objects_F77 | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_F77
+postdep_objects=\`echo $lt_postdep_objects_F77 | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -15412,7 +15486,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_F77
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_F77 | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -15492,7 +15566,7 @@
link_all_deplibs=$link_all_deplibs_F77
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -15634,11 +15708,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15637: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15711: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15641: \$? = $ac_status" >&5
+ echo "$as_me:15715: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -15902,11 +15976,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15905: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15979: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15909: \$? = $ac_status" >&5
+ echo "$as_me:15983: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -16006,11 +16080,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:16009: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16083: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:16013: \$? = $ac_status" >&5
+ echo "$as_me:16087: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -17471,10 +17545,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 17552 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -17858,6 +17953,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_GCJ
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -17991,11 +18089,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_GCJ
+predep_objects=\`echo $lt_predep_objects_GCJ | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_GCJ
+postdep_objects=\`echo $lt_postdep_objects_GCJ | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -18007,7 +18105,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_GCJ
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_GCJ | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -18087,7 +18185,7 @@
link_all_deplibs=$link_all_deplibs_GCJ
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -18339,6 +18437,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_RC
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -18472,11 +18573,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_RC
+predep_objects=\`echo $lt_predep_objects_RC | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_RC
+postdep_objects=\`echo $lt_postdep_objects_RC | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -18488,7 +18589,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_RC
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_RC | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -18568,7 +18669,7 @@
link_all_deplibs=$link_all_deplibs_RC
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -25513,6 +25614,7 @@
s,@CCDEPMODE@,$CCDEPMODE,;t t
s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t
s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t
+s,@SED@,$SED,;t t
s,@EGREP@,$EGREP,;t t
s,@LN_S@,$LN_S,;t t
s,@ECHO@,$ECHO,;t t
Index: Makefile.in
===================================================================
RCS file: /cvs/dirsec/adminserver/Makefile.in,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- Makefile.in 15 Jun 2007 17:13:02 -0000 1.9
+++ Makefile.in 15 Jun 2007 22:16:28 -0000 1.10
@@ -417,6 +417,7 @@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
RANLIB = @RANLIB@
+SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
@@ -597,12 +598,19 @@
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
+
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
-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 \
@@ -822,7 +830,9 @@
-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'
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
16 years, 11 months