Author: rmeggins
Update of /cvs/dirsec/adminserver/admserv/newinst/src
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv1096/adminserver/admserv/newinst/src
Modified Files:
AdminServer.pm.in
Log Message:
Resolves: bug 245214
Bug Description: adminserver: Solaris port for 1.1
Reviewed by: nhosoi (Thanks!)
Fix Description: Fortitude can supply different components, depending on the operating
system. On Fedora, mod_nss and Apache are already there, so we don't use Fortitude.
On RHEL4, we use Fortitude for mod_nss.
On Solaris, we use Fortitude for Apache and mod_nss.
I've created a fortitude.m4 that can handle all of these cases, and changed the
existing httpd.m4 and mod_nss.m4 to first see if fortitude.m4 has found the component.
configure will also pass the proper --with flags to mod_admserv and mod_restartd.
ICU introduces a dependency on C++. Solaris requires linking with the C++ libraries and
that also requires using C++ to link as well. This means using the CXXLINK macro.
There were a few other minor porting issues which required the additional compiler defines
and use of config.h.
We need to set the libpath before using the @cgibindir@/config program.
LIBPATH was not being set correctly on Solaris because I was using the extended sort flags
instead of the standard ones.
Platforms tested: Solaris 9 64bit
Flag Day: no
Doc impact: no
Index: AdminServer.pm.in
===================================================================
RCS file: /cvs/dirsec/adminserver/admserv/newinst/src/AdminServer.pm.in,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- AdminServer.pm.in 20 Jun 2007 16:35:02 -0000 1.2
+++ AdminServer.pm.in 22 Jun 2007 01:34:19 -0000 1.3
@@ -299,6 +299,10 @@
my $admConf = getAdmConf($configdir);
my $user = $admConf->{sysuser};
+ # this is required on some platforms in order to execute the config command
+ my $savepath = $ENV{SHLIB_PATH} || $ENV{LD_LIBRARY_PATH};
+ $ENV{LD_LIBRARY_PATH} = "@LIBPATH@:$savepath";
+ $ENV{SHLIB_PATH} = $ENV{LD_LIBRARY_PATH};
my $cmd = "@cgibindir@/config op=set
configuration.nsSuiteSpotUser=\"$user\"";
if ($port != $origport) { # need to change the port number
$cmd .= " configuration.nsServerPort=\"$port\"";
@@ -308,9 +312,13 @@
}
if (system($cmd)) {
+ $ENV{LD_LIBRARY_PATH} = $savepath;
+ $ENV{SHLIB_PATH} = $savepath;
return 0;
}
+ $ENV{LD_LIBRARY_PATH} = $savepath;
+ $ENV{SHLIB_PATH} = $savepath;
return 1;
}
Show replies by date