Author: rmeggins
Update of /cvs/dirsec/adminserver
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv18539/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 239502
Description: adminserver: autotools, FHS, and many bug fixes
Fix Description: 1) Fixes for RHEL5 and Apache 2.2 - the existing code for handling Apache
2.2 did not work, including cgisock code in httpd.conf
2) better support for mod_nss detection - look in several places for pcache and module
3) admin server post install will mkdirs that it uses if they do not already exist, and
set permissions appropriately
4) use --variable=libdir with nss pkg-config to get the libdir - --libs-only-L returns
nothing if the library is already in the system libdir - we need the actual libdir in
every case because we have to use it in the ld_preload in the startup script
Index: Makefile.am
===================================================================
RCS file: /cvs/dirsec/adminserver/Makefile.am,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- Makefile.am 15 May 2007 22:59:13 -0000 1.5
+++ Makefile.am 21 May 2007 15:52:25 -0000 1.6
@@ -305,9 +305,11 @@
-e 's,@vendor\@,$(vendor),g' \
-e 's,@mimemagic\@,$(mimemagic),g'
-% : %.in
+# because the source may be either httpd.conf.in or httpd-2.2.conf.in
+admserv/cfgstuff/httpd.conf: $(HTTPD_CONF_SRC)
if [ ! -d $(dir $@) ] ; then mkdir -p $(dir $@) ; fi
$(fixupcmd) $< > $@
-# because the source may be either httpd.conf.in or httpd-2.2.conf.in
-admserv/cfgstuff/httpd.conf: $(HTTPD_CONF_SRC)
+% : %.in
+ if [ ! -d $(dir $@) ] ; then mkdir -p $(dir $@) ; fi
+ $(fixupcmd) $< > $@
Index: configure.ac
===================================================================
RCS file: /cvs/dirsec/adminserver/configure.ac,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- configure.ac 15 May 2007 00:30:48 -0000 1.3
+++ configure.ac 21 May 2007 15:52:25 -0000 1.4
@@ -199,7 +199,7 @@
# WINNT should be true if building on Windows system not using
# cygnus, mingw, or the like and using cmd.exe as the shell
AM_CONDITIONAL([WINNT], false)
-AM_CONDITIONAL([APACHE22], $APACHE22)
+AM_CONDITIONAL([APACHE22], test $APACHE22)
AC_CONFIG_FILES([Makefile])
Index: configure
===================================================================
RCS file: /cvs/dirsec/adminserver/configure,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- configure 15 May 2007 22:59:13 -0000 1.4
+++ configure 21 May 2007 15:52:25 -0000 1.5
@@ -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
SED EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CP!
P CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBOBJS HTTPD APXS PKG_CONFIG ICU_CONFIG
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 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 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 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.
@@ -23420,7 +23420,7 @@
httpdconf=${httpd_root}/${httpd_conf_rel}
mimemagic=`grep MIMEMagicFile $httpdconf|grep -v \^# | awk '{print $2}'`
-if ! -f "$mimemagic" ; then
+if test ! -f "$mimemagic" ; then
# assume relative to root
mimemagic=${httpd_root}/${mimemagic}
fi
@@ -23794,13 +23794,13 @@
if $PKG_CONFIG --exists nss; then
nss_inc=`$PKG_CONFIG --cflags-only-I nss`
nss_lib=`$PKG_CONFIG --libs-only-L nss`
- nss_libdir=`$PKG_CONFIG --libs-only-L nss | sed -e s/-L// | sed -e s/\ .*$//`
+ nss_libdir=`$PKG_CONFIG --variable=libdir nss`
echo "$as_me:$LINENO: result: using system NSS" >&5
echo "${ECHO_T}using system NSS" >&6
elif $PKG_CONFIG --exists dirsec-nss; then
nss_inc=`$PKG_CONFIG --cflags-only-I dirsec-nss`
nss_lib=`$PKG_CONFIG --libs-only-L dirsec-nss`
- nss_libdir=`$PKG_CONFIG --libs-only-L dirsec-nss | sed -e s/-L// | sed -e s/\
.*$//`
+ nss_libdir=`$PKG_CONFIG --variable=libdir dirsec-nss`
echo "$as_me:$LINENO: result: using system dirsec NSS" >&5
echo "${ECHO_T}using system dirsec NSS" >&6
else
@@ -24600,13 +24600,86 @@
# else, punt
if test -z "$modnssbindir" ; then
- modnssbindir='$(sbindir)'
+ nsspcache=`grep NSSPassPhraseHelper $httpdconf|awk '{print $2}'`
+ if test -z "$nsspcache" ; then
+ nsspcache=`grep NSSPassPhraseHelper $httpd_root/conf.d/* | awk '{print
$2}'`
+ fi
+ if test -z "$nsspcache" ; then
+ # same directory as Apache?
+ modnssbindir=`dirname $HTTPD`
+ nsspcache="$modnssbindir/nss_pcache"
+ fi
+ if test -z "$nsspcache" -o ! -f "$nsspcache" ; then
+ # Extract the first word of "nss_pcache", so it can be a program name
with args.
+set dummy nss_pcache; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_nsspcache+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ case $nsspcache in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_nsspcache="$nsspcache" # Let the user override the test with a
path.
+ ;;
+ *)
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_dummy="$PATH:/opt/hpws/apache/bin:/usr/local/apache/sbin:/usr/local/apache2/sbin:/usr/sbin"
+for as_dir in $as_dummy
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_path_nsspcache="$as_dir/$ac_word$ac_exec_ext"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+ ;;
+esac
+fi
+nsspcache=$ac_cv_path_nsspcache
+
+if test -n "$nsspcache"; then
+ echo "$as_me:$LINENO: result: $nsspcache" >&5
+echo "${ECHO_T}$nsspcache" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ fi
+ if test -n "$nsspcache" -a -f "$nsspcache" ; then
+ modnssbindir=`dirname $nsspcache`
+ else
+ modnssbindir=
+ fi
fi
if test -z "$nssmoddir" ; then
nssmoddir="$moddir"
fi
+if test ! -f "$modnssbindir/nss_pcache" ; then
+ { { echo "$as_me:$LINENO: error: Could not find the mod_nss pass phrase helper
$modnssbindir/nss_pcache" >&5
+echo "$as_me: error: Could not find the mod_nss pass phrase helper
$modnssbindir/nss_pcache" >&2;}
+ { (exit 1); exit 1; }; }
+else
+ echo "$as_me:$LINENO: result: Using mod_nss pass phrase helper
$modnssbindir/nss_pcache" >&5
+echo "${ECHO_T}Using mod_nss pass phrase helper $modnssbindir/nss_pcache"
>&6
+fi
+
+if test ! -d "$nssmoddir" ; then
+ { { echo "$as_me:$LINENO: error: Could not find the mod_nss module directory
$nssmoddir" >&5
+echo "$as_me: error: Could not find the mod_nss module directory $nssmoddir"
>&2;}
+ { (exit 1); exit 1; }; }
+else
+ echo "$as_me:$LINENO: result: Using mod_nss module directory $nssmoddir"
>&5
+echo "${ECHO_T}Using mod_nss module directory $nssmoddir" >&6
+fi
+
# server userid, groupid
httpduser=nobody
@@ -24731,7 +24804,7 @@
-if $APACHE22; then
+if test $APACHE22; then
APACHE22_TRUE=
APACHE22_FALSE='#'
else
@@ -25536,6 +25609,7 @@
s,@APXS@,$APXS,;t t
s,@PKG_CONFIG@,$PKG_CONFIG,;t t
s,@ICU_CONFIG@,$ICU_CONFIG,;t t
+s,@nsspcache@,$nsspcache,;t t
s,@instconfigdir@,$instconfigdir,;t t
s,@PACKAGE_BASE_NAME@,$PACKAGE_BASE_NAME,;t t
s,@nspr_inc@,$nspr_inc,;t t
Index: Makefile.in
===================================================================
RCS file: /cvs/dirsec/adminserver/Makefile.in,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- Makefile.in 15 May 2007 22:59:13 -0000 1.5
+++ Makefile.in 21 May 2007 15:52:25 -0000 1.6
@@ -398,6 +398,7 @@
nss_lib = @nss_lib@
nss_libdir = @nss_libdir@
nssmoddir = @nssmoddir@
+nsspcache = @nsspcache@
oldincludedir = @oldincludedir@
piddir = $(localstatedir)@piddir@
pidfile = @pidfile@
@@ -1846,12 +1847,14 @@
%_de.res : %_de.properties
$(ICU_GENRB) -s. -d. --encoding 8859-2 --package-name $* $+
-% : %.in
+# because the source may be either httpd.conf.in or httpd-2.2.conf.in
+admserv/cfgstuff/httpd.conf: $(HTTPD_CONF_SRC)
if [ ! -d $(dir $@) ] ; then mkdir -p $(dir $@) ; fi
$(fixupcmd) $< > $@
-# because the source may be either httpd.conf.in or httpd-2.2.conf.in
-admserv/cfgstuff/httpd.conf: $(HTTPD_CONF_SRC)
+% : %.in
+ if [ ! -d $(dir $@) ] ; then mkdir -p $(dir $@) ; fi
+ $(fixupcmd) $< > $@
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: