ldap/admin/src/scripts/start-dirsrv.in | 15 +++++++-
ldap/admin/src/scripts/template-bak2db.in | 15 ++++++--
ldap/admin/src/scripts/template-bak2db.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-db2bak.in | 15 ++++++--
ldap/admin/src/scripts/template-db2bak.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-db2index.in | 14 +++++---
ldap/admin/src/scripts/template-db2index.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-db2ldif.in | 15 ++++++--
ldap/admin/src/scripts/template-db2ldif.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-dbverify.in | 15 ++++++--
ldap/admin/src/scripts/template-dn2rdn.in | 14 +++++---
ldap/admin/src/scripts/template-fixup-linkedattrs.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-fixup-memberof.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-ldif2db.in | 15 ++++++--
ldap/admin/src/scripts/template-ldif2db.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-ldif2ldap.in | 17 ++++++++-
ldap/admin/src/scripts/template-monitor.in | 17 ++++++++-
ldap/admin/src/scripts/template-ns-accountstatus.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-ns-activate.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-ns-inactivate.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-ns-newpwpolicy.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-restoreconfig.in | 15 +++++++-
ldap/admin/src/scripts/template-saveconfig.in | 15 +++++++-
ldap/admin/src/scripts/template-schema-reload.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-suffix2instance.in | 15 +++++++-
ldap/admin/src/scripts/template-syntax-validate.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-upgradedb.in | 15 +++++++-
ldap/admin/src/scripts/template-upgradednformat.in | 15 ++++++--
ldap/admin/src/scripts/template-usn-tombstone-cleanup.pl.in | 21 ++++++++++--
ldap/admin/src/scripts/template-verify-db.pl.in | 19 +++++++++-
ldap/admin/src/scripts/template-vlvindex.in | 15 +++++++-
wrappers/cl-dump.in | 11 +++++-
wrappers/dbscan.in | 10 ++++-
wrappers/infadd.in | 12 +++++-
wrappers/initscript.in | 10 +++++
wrappers/ldap-agent.in | 12 +++++-
wrappers/ldclt.in | 12 +++++-
wrappers/ldif.in | 12 +++++-
wrappers/migratecred.in | 14 ++++++--
wrappers/mmldif.in | 14 ++++++--
wrappers/pwdhash.in | 14 ++++++--
wrappers/repl-monitor.in | 11 +++++-
wrappers/rsearch.in | 12 +++++-
43 files changed, 596 insertions(+), 103 deletions(-)
New commits:
commit ce0dc222c36ed4b8ca3936e800e28cb26d64d9f5
Author: Nathan Kinder <nkinder(a)redhat.com>
Date: Thu Jan 27 12:10:01 2011 -0800
Bug 672468 - Don't use empty path elements in LD_LIBRARY_PATH
Many of the command line wrappers and perl scripts have their
LD_LIBRARY_PATH and SHLIB_PATH defined with macros that are
replaced by configure. It is common for some of these macros
to be empty, which results in empty path elements.
This patch adds a bit more logic to the creation of the libpath
to avoid empty path elements and leading and trailing colons.
diff --git a/ldap/admin/src/scripts/start-dirsrv.in
b/ldap/admin/src/scripts/start-dirsrv.in
index d7144d1..291c821 100755
--- a/ldap/admin/src/scripts/start-dirsrv.in
+++ b/ldap/admin/src/scripts/start-dirsrv.in
@@ -6,6 +6,11 @@
# 1: Server could not be started
# 2: Server already running
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
# Starts a single instance
start_instance() {
# The first argument is the server ID. Anything
@@ -22,9 +27,15 @@ start_instance() {
fi
prefix="$DS_ROOT"
-
LD_LIBRARY_PATH=$prefix$SERVER_DIR:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@:@pcre_libdir@
+
+ libpath_add "$prefix$SERVER_DIR"
+ libpath_add "$prefix@nss_libdir@"
+ libpath_add "$prefix@libdir@"
+ libpath_add "@nss_libdir@"
+ libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
-
SHLIB_PATH=$prefix$SERVER_DIR:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@:@pcre_libdir@
+ SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
DS_CONFIG_DIR=$CONFIG_DIR
diff --git a/ldap/admin/src/scripts/template-bak2db.in
b/ldap/admin/src/scripts/template-bak2db.in
index 0f92667..b081839 100755
--- a/ldap/admin/src/scripts/template-bak2db.in
+++ b/ldap/admin/src/scripts/template-bak2db.in
@@ -4,10 +4,17 @@ prefix="{{DS-ROOT}}"
if [ "$prefix" = "/" ] ; then
prefix=""
fi
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:$prefix@pcre_libdir@
-if [ -n "$prefix" ] ; then
- LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:@nss_libdir@"
-fi
+
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
diff --git a/ldap/admin/src/scripts/template-bak2db.pl.in
b/ldap/admin/src/scripts/template-bak2db.pl.in
index 4cd51ab..4ab79cc 100644
--- a/ldap/admin/src/scripts/template-bak2db.pl.in
+++ b/ldap/admin/src/scripts/template-bak2db.pl.in
@@ -125,8 +125,25 @@ $entry =
"${dn}${misc}${cn}${nsinstance}${nsarchivedir}${nsdbtype}";
$vstr = "";
if ($verbose != 0) { $vstr = "-v"; }
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
open(FOO, "| ldapmodify @ldaptool_opts@ $vstr -h {{SERVER-NAME}} -p {{SERVER-PORT}}
-D \"$rootdn\" -w \"$passwd\" -a" );
print(FOO "$entry");
close(FOO);
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-db2bak.in
b/ldap/admin/src/scripts/template-db2bak.in
index 5ff5d07..d89f6ee 100755
--- a/ldap/admin/src/scripts/template-db2bak.in
+++ b/ldap/admin/src/scripts/template-db2bak.in
@@ -4,10 +4,17 @@ prefix="{{DS-ROOT}}"
if [ "$prefix" = "/" ] ; then
prefix=""
fi
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:$prefix@pcre_libdir@
-if [ -n "$prefix" ] ; then
- LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:@nss_libdir@"
-fi
+
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
diff --git a/ldap/admin/src/scripts/template-db2bak.pl.in
b/ldap/admin/src/scripts/template-db2bak.pl.in
index b443f0b..8a0cb1c 100644
--- a/ldap/admin/src/scripts/template-db2bak.pl.in
+++ b/ldap/admin/src/scripts/template-db2bak.pl.in
@@ -114,9 +114,26 @@ $entry = "${dn}${misc}${cn}${nsarchivedir}${nsdbtype}";
$vstr = "";
if ($verbose != 0) { $vstr = "-v"; }
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
print("Back up directory: $archivedir\n");
open(FOO, "| ldapmodify @ldaptool_opts@ $vstr -h {{SERVER-NAME}} -p {{SERVER-PORT}}
-D \"$rootdn\" -w \"$passwd\" -a" );
print(FOO "$entry");
close(FOO);
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-db2index.in
b/ldap/admin/src/scripts/template-db2index.in
index e0e9a55..3dc4740 100755
--- a/ldap/admin/src/scripts/template-db2index.in
+++ b/ldap/admin/src/scripts/template-db2index.in
@@ -4,10 +4,16 @@ prefix="{{DS-ROOT}}"
if [ "$prefix" = "/" ] ; then
prefix=""
fi
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:$prefix@pcre_libdir@
-if [ -n "$prefix" ] ; then
- LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:@nss_libdir@"
-fi
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
diff --git a/ldap/admin/src/scripts/template-db2index.pl.in
b/ldap/admin/src/scripts/template-db2index.pl.in
index eb58957..e598b05 100644
--- a/ldap/admin/src/scripts/template-db2index.pl.in
+++ b/ldap/admin/src/scripts/template-db2index.pl.in
@@ -69,8 +69,13 @@ $verbose = 0;
$prefix = "{{DS-ROOT}}";
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
$i = 0;
while ($i <= $#ARGV)
@@ -224,3 +229,15 @@ $entry =
"${dn}${misc}${cn}${nsinstance}${attribute}${vlvattribute}";
open(FOO, "| ldapmodify @ldaptool_opts@ $vstr -h {{SERVER-NAME}} -p {{SERVER-PORT}}
-D \"$rootdn\" -w \"$passwd\" -a" );
print(FOO "$entry");
close(FOO);
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-db2ldif.in
b/ldap/admin/src/scripts/template-db2ldif.in
index e519f3e..2989b77 100755
--- a/ldap/admin/src/scripts/template-db2ldif.in
+++ b/ldap/admin/src/scripts/template-db2ldif.in
@@ -4,10 +4,17 @@ prefix="{{DS-ROOT}}"
if [ "$prefix" = "/" ] ; then
prefix=""
fi
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:$prefix@pcre_libdir@
-if [ -n "$prefix" ] ; then
- LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:@nss_libdir@"
-fi
+
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
diff --git a/ldap/admin/src/scripts/template-db2ldif.pl.in
b/ldap/admin/src/scripts/template-db2ldif.pl.in
index 2db6421..a4929ba 100644
--- a/ldap/admin/src/scripts/template-db2ldif.pl.in
+++ b/ldap/admin/src/scripts/template-db2ldif.pl.in
@@ -258,9 +258,26 @@ $entry =
"${dn}${misc}${cn}${nsinstance}${nsincluded}${nsexcluded}${nsreplica}${
$vstr = "";
if ($verbose != 0) { $vstr = "-v"; }
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
print("Exporting to ldif file: ${ldiffile}\n");
open(FOO, "| ldapmodify @ldaptool_opts@ $vstr -h {{SERVER-NAME}} -p {{SERVER-PORT}}
-D \"$rootdn\" -w \"$passwd\" -a" );
print(FOO "$entry");
close(FOO);
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-dbverify.in
b/ldap/admin/src/scripts/template-dbverify.in
index 0f71450..8c1a98e 100755
--- a/ldap/admin/src/scripts/template-dbverify.in
+++ b/ldap/admin/src/scripts/template-dbverify.in
@@ -4,10 +4,17 @@ prefix="{{DS-ROOT}}"
if [ "$prefix" = "/" ] ; then
prefix=""
fi
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:$prefix@pcre_libdir@
-if [ -n "$prefix" ] ; then
- LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:@nss_libdir@"
-fi
+
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
diff --git a/ldap/admin/src/scripts/template-dn2rdn.in
b/ldap/admin/src/scripts/template-dn2rdn.in
index f9efeea..a9402fd 100755
--- a/ldap/admin/src/scripts/template-dn2rdn.in
+++ b/ldap/admin/src/scripts/template-dn2rdn.in
@@ -4,10 +4,16 @@ prefix="{{DS-ROOT}}"
if [ "$prefix" = "/" ] ; then
prefix=""
fi
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@
-if [ -n "$prefix" ] ; then
- LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:@nss_libdir@"
-fi
+
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+
export LD_LIBRARY_PATH
SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
diff --git a/ldap/admin/src/scripts/template-fixup-linkedattrs.pl.in
b/ldap/admin/src/scripts/template-fixup-linkedattrs.pl.in
index 1745f80..f181a7a 100644
--- a/ldap/admin/src/scripts/template-fixup-linkedattrs.pl.in
+++ b/ldap/admin/src/scripts/template-fixup-linkedattrs.pl.in
@@ -61,8 +61,13 @@ $verbose = 0;
$prefix = "{{DS-ROOT}}";
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
$i = 0;
while ($i <= $#ARGV)
@@ -150,3 +155,15 @@ $entry = "${dn}${misc}${cn}${basedn}${linkdn}";
open(FOO, "| ldapmodify @ldaptool_opts@ $vstr -h {{SERVER-NAME}} -p {{SERVER-PORT}}
-D \"$rootdn\" -w \"$passwd\" -a" );
print(FOO "$entry");
close(FOO);
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-fixup-memberof.pl.in
b/ldap/admin/src/scripts/template-fixup-memberof.pl.in
index 547379f..b43c21a 100644
--- a/ldap/admin/src/scripts/template-fixup-memberof.pl.in
+++ b/ldap/admin/src/scripts/template-fixup-memberof.pl.in
@@ -65,8 +65,13 @@ $verbose = 0;
$prefix = "{{DS-ROOT}}";
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
$i = 0;
while ($i <= $#ARGV)
@@ -161,3 +166,15 @@ $entry = "${dn}${misc}${cn}${basedn}${filter}";
open(FOO, "| ldapmodify @ldaptool_opts@ $vstr -h {{SERVER-NAME}} -p {{SERVER-PORT}}
-D \"$rootdn\" -w \"$passwd\" -a" );
print(FOO "$entry");
close(FOO);
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-ldif2db.in
b/ldap/admin/src/scripts/template-ldif2db.in
index ce64193..8f92acf 100755
--- a/ldap/admin/src/scripts/template-ldif2db.in
+++ b/ldap/admin/src/scripts/template-ldif2db.in
@@ -4,10 +4,17 @@ prefix="{{DS-ROOT}}"
if [ "$prefix" = "/" ] ; then
prefix=""
fi
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:$prefix@pcre_libdir@
-if [ -n "$prefix" ] ; then
- LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:@nss_libdir@"
-fi
+
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
diff --git a/ldap/admin/src/scripts/template-ldif2db.pl.in
b/ldap/admin/src/scripts/template-ldif2db.pl.in
index da6073b..089c95d 100644
--- a/ldap/admin/src/scripts/template-ldif2db.pl.in
+++ b/ldap/admin/src/scripts/template-ldif2db.pl.in
@@ -217,8 +217,25 @@ $entry =
"${dn}${misc}${cn}${nsinstance}${nsincluded}${nsexcluded}${nsldiffiles}
$vstr = "";
if ($verbose != 0) { $vstr = "-v"; }
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
open(FOO, "| ldapmodify @ldaptool_opts@ $vstr -h {{SERVER-NAME}} -p {{SERVER-PORT}}
-D \"$rootdn\" -w \"$passwd\" -a" );
print(FOO "$entry");
close(FOO);
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-ldif2ldap.in
b/ldap/admin/src/scripts/template-ldif2ldap.in
index 4f94489..ab32f48 100755
--- a/ldap/admin/src/scripts/template-ldif2ldap.in
+++ b/ldap/admin/src/scripts/template-ldif2ldap.in
@@ -5,10 +5,21 @@ if [ "$prefix" = "/" ] ; then
prefix=""
fi
-PATH=$prefix@ldaptool_bindir@:@ldaptool_bindir@
-LD_LIBRARY_PATH=$prefix@ldapsdk_libdir@:@ldapsdk_libdir@:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix@ldapsdk_libdir@"
+libpath_add "@ldapsdk_libdir@"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "@nss_libdir@"
+
export LD_LIBRARY_PATH
-SHLIB_PATH=$prefix@ldapsdk_libdir@:@ldapsdk_libdir@:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@
+SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
+PATH=$prefix@ldaptool_bindir@:@ldaptool_bindir@
+
ldapmodify @ldaptool_opts@ -a -p {{SERVER-PORT}} -D "$1" -w "$2" -f
$3
diff --git a/ldap/admin/src/scripts/template-monitor.in
b/ldap/admin/src/scripts/template-monitor.in
index 6cbde87..49ac960 100755
--- a/ldap/admin/src/scripts/template-monitor.in
+++ b/ldap/admin/src/scripts/template-monitor.in
@@ -1,11 +1,22 @@
#!/bin/sh
-PATH=$prefix@ldaptool_bindir@:@ldaptool_bindir@
-LD_LIBRARY_PATH=$prefix@ldapsdk_libdir@:@ldapsdk_libdir@:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix@ldapsdk_libdir@"
+libpath_add "@ldapsdk_libdir@"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "@nss_libdir@"
+
export LD_LIBRARY_PATH
-SHLIB_PATH=$prefix@ldapsdk_libdir@:@ldapsdk_libdir@:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@
+SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
+PATH=$prefix@ldaptool_bindir@:@ldaptool_bindir@
+
if [ "x$1" != "x" ];
then MDN="$1";
else MDN="cn=monitor";
diff --git a/ldap/admin/src/scripts/template-ns-accountstatus.pl.in
b/ldap/admin/src/scripts/template-ns-accountstatus.pl.in
index 7769ce2..8e2e590 100644
--- a/ldap/admin/src/scripts/template-ns-accountstatus.pl.in
+++ b/ldap/admin/src/scripts/template-ns-accountstatus.pl.in
@@ -393,8 +393,13 @@ else
debug("Running ** $cmd ** $operation\n");
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
$ldapsearch="ldapsearch @ldaptool_opts@ @plainldif_opts@";
$ldapmodify="ldapmodify @ldaptool_opts@";
@@ -842,3 +847,15 @@ debug("$modrole, $entry\n");
out("$entry $state.\n");
exit 0;
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-ns-activate.pl.in
b/ldap/admin/src/scripts/template-ns-activate.pl.in
index 7769ce2..8e2e590 100644
--- a/ldap/admin/src/scripts/template-ns-activate.pl.in
+++ b/ldap/admin/src/scripts/template-ns-activate.pl.in
@@ -393,8 +393,13 @@ else
debug("Running ** $cmd ** $operation\n");
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
$ldapsearch="ldapsearch @ldaptool_opts@ @plainldif_opts@";
$ldapmodify="ldapmodify @ldaptool_opts@";
@@ -842,3 +847,15 @@ debug("$modrole, $entry\n");
out("$entry $state.\n");
exit 0;
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-ns-inactivate.pl.in
b/ldap/admin/src/scripts/template-ns-inactivate.pl.in
index 7769ce2..8e2e590 100644
--- a/ldap/admin/src/scripts/template-ns-inactivate.pl.in
+++ b/ldap/admin/src/scripts/template-ns-inactivate.pl.in
@@ -393,8 +393,13 @@ else
debug("Running ** $cmd ** $operation\n");
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
$ldapsearch="ldapsearch @ldaptool_opts@ @plainldif_opts@";
$ldapmodify="ldapmodify @ldaptool_opts@";
@@ -842,3 +847,15 @@ debug("$modrole, $entry\n");
out("$entry $state.\n");
exit 0;
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-ns-newpwpolicy.pl.in
b/ldap/admin/src/scripts/template-ns-newpwpolicy.pl.in
index 5d158bd..7e99719 100755
--- a/ldap/admin/src/scripts/template-ns-newpwpolicy.pl.in
+++ b/ldap/admin/src/scripts/template-ns-newpwpolicy.pl.in
@@ -47,8 +47,13 @@ use lib qw(@perlpath@);
$prefix = "{{DS-ROOT}}";
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
# Add new password policy specific entries
#############################################################################
@@ -283,3 +288,15 @@ sub usage {
}
} # end of $opt_U
}
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-restoreconfig.in
b/ldap/admin/src/scripts/template-restoreconfig.in
index 0e5de9b..480af88 100755
--- a/ldap/admin/src/scripts/template-restoreconfig.in
+++ b/ldap/admin/src/scripts/template-restoreconfig.in
@@ -1,9 +1,20 @@
#!/bin/sh
prefix="{{DS-ROOT}}"
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@:$prefix@pcre_libdir@
+
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "@nss_libdir@"
+libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
-SHLIB_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@:$prefix@pcre_libdir@
+SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
cd {{SERVERBIN-DIR}}
diff --git a/ldap/admin/src/scripts/template-saveconfig.in
b/ldap/admin/src/scripts/template-saveconfig.in
index 737c97b..4c8f3d6 100755
--- a/ldap/admin/src/scripts/template-saveconfig.in
+++ b/ldap/admin/src/scripts/template-saveconfig.in
@@ -1,9 +1,20 @@
#!/bin/sh
prefix="{{DS-ROOT}}"
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@:$prefix@pcre_libdir@
+
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "@nss_libdir@"
+libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
-SHLIB_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@:$prefix@pcre_libdir@
+SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
cd {{SERVERBIN-DIR}}
diff --git a/ldap/admin/src/scripts/template-schema-reload.pl.in
b/ldap/admin/src/scripts/template-schema-reload.pl.in
index 364c2b0..f7a1dbb 100644
--- a/ldap/admin/src/scripts/template-schema-reload.pl.in
+++ b/ldap/admin/src/scripts/template-schema-reload.pl.in
@@ -60,8 +60,13 @@ $verbose = 0;
$prefix = "{{DS-ROOT}}";
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
$i = 0;
while ($i <= $#ARGV)
@@ -150,3 +155,15 @@ $entry = "${dn}${misc}${cn}${basedn}${schemadir}";
open(FOO, "| ldapmodify @ldaptool_opts@ $vstr -h {{SERVER-NAME}} -p {{SERVER-PORT}}
-D \"$rootdn\" -w \"$passwd\" -a" );
print(FOO "$entry");
close(FOO);
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-suffix2instance.in
b/ldap/admin/src/scripts/template-suffix2instance.in
index 994f8af..8186ef8 100755
--- a/ldap/admin/src/scripts/template-suffix2instance.in
+++ b/ldap/admin/src/scripts/template-suffix2instance.in
@@ -1,9 +1,20 @@
#!/bin/sh
prefix="{{DS-ROOT}}"
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@:$prefix@pcre_libdir@
+
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "@nss_libdir@"
+libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
-SHLIB_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@:$prefix@pcre_libdir@
+SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
cd {{SERVERBIN-DIR}}
diff --git a/ldap/admin/src/scripts/template-syntax-validate.pl.in
b/ldap/admin/src/scripts/template-syntax-validate.pl.in
index b5fb796..b87e12d 100644
--- a/ldap/admin/src/scripts/template-syntax-validate.pl.in
+++ b/ldap/admin/src/scripts/template-syntax-validate.pl.in
@@ -65,8 +65,13 @@ $verbose = 0;
$prefix = "{{DS-ROOT}}";
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
$i = 0;
while ($i <= $#ARGV)
@@ -161,3 +166,15 @@ $entry = "${dn}${misc}${cn}${basedn}${filter}";
open(FOO, "| ldapmodify @ldaptool_opts@ $vstr -h {{SERVER-NAME}} -p {{SERVER-PORT}}
-D \"$rootdn\" -w \"$passwd\" -a" );
print(FOO "$entry");
close(FOO);
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-upgradedb.in
b/ldap/admin/src/scripts/template-upgradedb.in
index 9b6f03d..a36acc6 100755
--- a/ldap/admin/src/scripts/template-upgradedb.in
+++ b/ldap/admin/src/scripts/template-upgradedb.in
@@ -1,9 +1,20 @@
#!/bin/sh
prefix="{{DS-ROOT}}"
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@:$prefix@pcre_libdir@
+
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "@nss_libdir@"
+libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
-SHLIB_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@:$prefix@pcre_libdir@
+SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
cd {{SERVERBIN-DIR}}
diff --git a/ldap/admin/src/scripts/template-upgradednformat.in
b/ldap/admin/src/scripts/template-upgradednformat.in
index ea4f18a..d1ff5c8 100755
--- a/ldap/admin/src/scripts/template-upgradednformat.in
+++ b/ldap/admin/src/scripts/template-upgradednformat.in
@@ -11,10 +11,17 @@ prefix="{{DS-ROOT}}"
if [ "$prefix" = "/" ] ; then
prefix=""
fi
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:$prefix@pcre_libdir@
-if [ -n "$prefix" ] ; then
- LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:@nss_libdir@"
-fi
+
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
diff --git a/ldap/admin/src/scripts/template-usn-tombstone-cleanup.pl.in
b/ldap/admin/src/scripts/template-usn-tombstone-cleanup.pl.in
index 53e4cea..3e17be0 100644
--- a/ldap/admin/src/scripts/template-usn-tombstone-cleanup.pl.in
+++ b/ldap/admin/src/scripts/template-usn-tombstone-cleanup.pl.in
@@ -64,8 +64,13 @@ $verbose = 0;
$prefix = "{{DS-ROOT}}";
$ENV{'PATH'} =
"$prefix@ldaptool_bindir@:$prefix/usr/bin:@ldaptool_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
-$ENV{'SHLIB_PATH'} =
"$prefix@nss_libdir@:$prefix/usr/lib:@nss_libdir@:/usr/lib";
+
+libpath_add("$prefix@nss_libdir@");
+libpath_add("$prefix/usr/lib");
+libpath_add("@nss_libdir@");
+libpath_add("/usr/lib");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
$i = 0;
while ($i <= $#ARGV)
@@ -178,3 +183,15 @@ $entry = "${dn}${misc}${cn}${basedn}${args}";
open(FOO, "| ldapmodify @ldaptool_opts@ $vstr -h {{SERVER-NAME}} -p {{SERVER-PORT}}
-D \"$rootdn\" -w \"$passwd\" -a" );
print(FOO "$entry");
close(FOO);
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-verify-db.pl.in
b/ldap/admin/src/scripts/template-verify-db.pl.in
index 25bb46b..c352eb2 100644
--- a/ldap/admin/src/scripts/template-verify-db.pl.in
+++ b/ldap/admin/src/scripts/template-verify-db.pl.in
@@ -170,8 +170,11 @@ my $dbdirs = getDbDir($startpoint);
my $prefix = "{{DS-ROOT}}";
$ENV{'PATH'} =
"{{INST-DIR}}:$prefix@db_bindir@:$prefix/usr/bin:@db_bindir@:/usr/bin";
-$ENV{'LD_LIBRARY_PATH'} = "@db_libdir@:@libdir@";
-$ENV{'SHLIB_PATH'} = "@db_libdir@:@libdir@";
+
+libpath_add("@db_libdir@");
+libpath_add("@libdir@");
+
+$ENV{'SHLIB_PATH'} = "$ENV{'LD_LIBRARY_PATH'}";
# Check transaction logs by db_printlog
for (my $i = 0; "$$dbdirs[$i]" ne ""; $i++)
@@ -256,3 +259,15 @@ else
print "Good\n";
exit(0);
}
+
+sub libpath_add {
+ my $libpath = shift;
+
+ if ($libpath) {
+ if ($ENV{'LD_LIBRARY_PATH'}) {
+ $ENV{'LD_LIBRARY_PATH'} =
"$ENV{'LD_LIBRARY_PATH'}:$libpath";
+ } else {
+ $ENV{'LD_LIBRARY_PATH'} = "$libpath";
+ }
+ }
+}
diff --git a/ldap/admin/src/scripts/template-vlvindex.in
b/ldap/admin/src/scripts/template-vlvindex.in
index e6cd743..193667a 100755
--- a/ldap/admin/src/scripts/template-vlvindex.in
+++ b/ldap/admin/src/scripts/template-vlvindex.in
@@ -1,9 +1,20 @@
#!/bin/sh
prefix="{{DS-ROOT}}"
-LD_LIBRARY_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@:$prefix@pcre_libdir@
+
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "$prefix{{SERVER-DIR}}"
+libpath_add "$prefix@nss_libdir@"
+libpath_add "$prefix@libdir@"
+libpath_add "@nss_libdir@"
+libpath_add "$prefix@pcre_libdir@"
+
export LD_LIBRARY_PATH
-SHLIB_PATH=$prefix/{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@:$prefix@pcre_libdir@
+SHLIB_PATH=$LD_LIBRARY_PATH
export SHLIB_PATH
cd {{SERVERBIN-DIR}}
diff --git a/wrappers/cl-dump.in b/wrappers/cl-dump.in
index 9a6301a..d42c6f2 100755
--- a/wrappers/cl-dump.in
+++ b/wrappers/cl-dump.in
@@ -43,8 +43,15 @@
# wrapper for cl-dump.pl
# set the library paths and call cl-dump.pl
-LD_LIBRARY_PATH=@nss_libdir@:/usr/lib
-SHLIB_PATH=@nss_libdir@:/usr/lib
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "@nss_libdir@"
+libpath_add "/usr/lib"
+
+SHLIB_PATH=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH SHLIB_PATH
@bindir(a)/cl-dump.pl "$@"
diff --git a/wrappers/dbscan.in b/wrappers/dbscan.in
index 115a126..942ffc9 100755
--- a/wrappers/dbscan.in
+++ b/wrappers/dbscan.in
@@ -4,7 +4,6 @@
## (1) Specify variables used by this script. ##
###############################################################################
-LIB_DIR=@nspr_libdir@:@db_libdir@
BIN_DIR=@bindir@
COMMAND=dbscan-bin
@@ -14,7 +13,14 @@ COMMAND=dbscan-bin
## search order this command wrapper uses to find shared libraries. ##
###############################################################################
-LD_LIBRARY_PATH=${LIB_DIR}
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "@nspr_libdir@"
+libpath_add "@db_libdir@"
+
export LD_LIBRARY_PATH
diff --git a/wrappers/infadd.in b/wrappers/infadd.in
index 89eb0ea..3ebc40b 100755
--- a/wrappers/infadd.in
+++ b/wrappers/infadd.in
@@ -4,7 +4,6 @@
## (1) Specify variables used by this script. ##
###############################################################################
-LIB_DIR=@nss_libdir@:@nspr_libdir@:@ldapsdk_libdir@:@sasl_libdir@
BIN_DIR=@bindir@
COMMAND=infadd-bin
@@ -14,7 +13,16 @@ COMMAND=infadd-bin
## search order this command wrapper uses to find shared libraries. ##
###############################################################################
-LD_LIBRARY_PATH=${LIB_DIR}
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "@nss_libdir@"
+libpath_add "@nspr_libdir@"
+libpath_add "@ldapsdk_libdir@"
+libpath_add "@sasl_libdir@"
+
export LD_LIBRARY_PATH
diff --git a/wrappers/initscript.in b/wrappers/initscript.in
index 147b2d6..7632749 100644
--- a/wrappers/initscript.in
+++ b/wrappers/initscript.in
@@ -60,6 +60,11 @@ success()
}
}
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
# On Solaris /var/run is in tmpfs and gets wiped out upon reboot
# we have to recreate the /var/run/@package_name@ directory
# We also have to make sure that the directory is writable
@@ -150,7 +155,10 @@ if [ -n "$2" ]; then
fi
start() {
- LD_LIBRARY_PATH=@libdir@/@package_name@:@nss_libdir@:@pcre_libdir@
+ libpath_add "@libdir@/@package_name@"
+ libpath_add "@nss_libdir@"
+ libpath_add "@pcre_libdir@"
+
export LD_LIBRARY_PATH
echo "Starting $prog: "
# Start every slapd instance that isn't already running
diff --git a/wrappers/ldap-agent.in b/wrappers/ldap-agent.in
index 266507a..62c3d6e 100755
--- a/wrappers/ldap-agent.in
+++ b/wrappers/ldap-agent.in
@@ -4,7 +4,6 @@
## (1) Specify variables used by this script. ##
###############################################################################
-LIB_DIR=@nss_libdir@:@nspr_libdir@:@ldapsdk_libdir@:@netsnmp_libdir@
BIN_DIR=@sbindir@
COMMAND=ldap-agent-bin
@@ -17,7 +16,16 @@ export MIBS
## search order this command wrapper uses to find shared libraries. ##
###############################################################################
-LD_LIBRARY_PATH=${LIB_DIR}
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "@nss_libdir@"
+libpath_add "@nspr_libdir@"
+libpath_add "@ldapsdk_libdir@"
+libpath_add "@netsnmp_libdir@"
+
export LD_LIBRARY_PATH
diff --git a/wrappers/ldclt.in b/wrappers/ldclt.in
index 079e33c..7f0a3cc 100755
--- a/wrappers/ldclt.in
+++ b/wrappers/ldclt.in
@@ -4,7 +4,6 @@
## (1) Specify variables used by this script. ##
###############################################################################
-LIB_DIR=@nss_libdir@:@nspr_libdir@:@ldapsdk_libdir@:@sasl_libdir@
BIN_DIR=@bindir@
COMMAND=ldclt-bin
@@ -14,7 +13,16 @@ COMMAND=ldclt-bin
## search order this command wrapper uses to find shared libraries. ##
###############################################################################
-LD_LIBRARY_PATH=${LIB_DIR}
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "@nss_libdir@"
+libpath_add "@nspr_libdir@"
+libpath_add "@ldapsdk_libdir@"
+libpath_add "@sasl_libdir@"
+
export LD_LIBRARY_PATH
SASL_PATH=@sasl_path@
export SASL_PATH
diff --git a/wrappers/ldif.in b/wrappers/ldif.in
index 8fcaf17..5407920 100755
--- a/wrappers/ldif.in
+++ b/wrappers/ldif.in
@@ -4,7 +4,6 @@
## (1) Specify variables used by this script. ##
###############################################################################
-LIB_DIR=@nss_libdir@:@nspr_libdir@:@ldapsdk_libdir@:@sasl_libdir@
BIN_DIR=@bindir@
COMMAND=ldif-bin
@@ -14,7 +13,16 @@ COMMAND=ldif-bin
## search order this command wrapper uses to find shared libraries. ##
###############################################################################
-LD_LIBRARY_PATH=${LIB_DIR}
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "@nss_libdir@"
+libpath_add "@nspr_libdir@"
+libpath_add "@ldapsdk_libdir@"
+libpath_add "@sasl_libdir@"
+
export LD_LIBRARY_PATH
diff --git a/wrappers/migratecred.in b/wrappers/migratecred.in
index dd44800..49de8d7 100755
--- a/wrappers/migratecred.in
+++ b/wrappers/migratecred.in
@@ -4,7 +4,6 @@
## (1) Specify variables used by this script. ##
###############################################################################
-LIB_DIR=@serverdir@:@nss_libdir@:@nspr_libdir@:@ldapsdk_libdir@:@sasl_libdir@:@pcre_libdir@
BIN_DIR=@bindir@
COMMAND=migratecred-bin
@@ -14,7 +13,18 @@ COMMAND=migratecred-bin
## search order this command wrapper uses to find shared libraries. ##
###############################################################################
-LD_LIBRARY_PATH=${LIB_DIR}
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "@serverdir@"
+libpath_add "@nss_libdir@"
+libpath_add "@nspr_libdir@"
+libpath_add "@ldapsdk_libdir@"
+libpath_add "@sasl_libdir@"
+libpath_add "@pcre_libdir@"
+
export LD_LIBRARY_PATH
diff --git a/wrappers/mmldif.in b/wrappers/mmldif.in
index a11932e..aa09bae 100755
--- a/wrappers/mmldif.in
+++ b/wrappers/mmldif.in
@@ -4,7 +4,6 @@
## (1) Specify variables used by this script. ##
###############################################################################
-LIB_DIR=@serverdir@:@nss_libdir@:@nspr_libdir@:@ldapsdk_libdir@:@sasl_libdir@:@pcre_libdir@
BIN_DIR=@bindir@
COMMAND=mmldif-bin
@@ -14,7 +13,18 @@ COMMAND=mmldif-bin
## search order this command wrapper uses to find shared libraries. ##
###############################################################################
-LD_LIBRARY_PATH=${LIB_DIR}
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "@serverdir@"
+libpath_add "@nss_libdir@"
+libpath_add "@nspr_libdir@"
+libpath_add "@ldapsdk_libdir@"
+libpath_add "@sasl_libdir@"
+libpath_add "@pcre_libdir@"
+
export LD_LIBRARY_PATH
diff --git a/wrappers/pwdhash.in b/wrappers/pwdhash.in
index b3ef3fa..69618fa 100755
--- a/wrappers/pwdhash.in
+++ b/wrappers/pwdhash.in
@@ -4,7 +4,6 @@
## (1) Specify variables used by this script. ##
###############################################################################
-LIB_DIR=@serverdir@:@nss_libdir@:@nspr_libdir@:@ldapsdk_libdir@:@sasl_libdir@:@pcre_libdir@
BIN_DIR=@bindir@
COMMAND=pwdhash-bin
@@ -14,7 +13,18 @@ COMMAND=pwdhash-bin
## search order this command wrapper uses to find shared libraries. ##
###############################################################################
-LD_LIBRARY_PATH=${LIB_DIR}
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "@serverdir@"
+libpath_add "@nss_libdir@"
+libpath_add "@nspr_libdir@"
+libpath_add "@ldapsdk_libdir@"
+libpath_add "@sasl_libdir@"
+libpath_add "@pcre_libdir@"
+
export LD_LIBRARY_PATH
diff --git a/wrappers/repl-monitor.in b/wrappers/repl-monitor.in
index 116dbb5..cba72a1 100755
--- a/wrappers/repl-monitor.in
+++ b/wrappers/repl-monitor.in
@@ -43,8 +43,15 @@
# wrapper for repl-monitor.pl
# set the library paths and call repl-monitor.pl
-LD_LIBRARY_PATH=@nss_libdir@:/usr/lib
-SHLIB_PATH=@nss_libdir@:/usr/lib
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "@nss_libdir@"
+libpath_add "/usr/lib"
+
+SHLIB_PATH=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH SHLIB_PATH
@bindir(a)/repl-monitor.pl "$@"
diff --git a/wrappers/rsearch.in b/wrappers/rsearch.in
index cebecf1..a78abd7 100755
--- a/wrappers/rsearch.in
+++ b/wrappers/rsearch.in
@@ -4,7 +4,6 @@
## (1) Specify variables used by this script. ##
###############################################################################
-LIB_DIR=@nss_libdir@:@nspr_libdir@:@ldapsdk_libdir@:@sasl_libdir@
BIN_DIR=@bindir@
COMMAND=rsearch-bin
@@ -14,7 +13,16 @@ COMMAND=rsearch-bin
## search order this command wrapper uses to find shared libraries. ##
###############################################################################
-LD_LIBRARY_PATH=${LIB_DIR}
+libpath_add() {
+ [ -z "$1" ] && return
+ LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$1
+}
+
+libpath_add "@nss_libdir@"
+libpath_add "@nspr_libdir@"
+libpath_add "@ldapsdk_libdir@"
+libpath_add "@sasl_libdir@"
+
export LD_LIBRARY_PATH