- generate dummy mod_ssl cert with CA:FALSE constraint (#667841)

- add man page stubs for httpd.event, httpd.worker
- drop distcache support
- add STOP_TIMEOUT support to init script
This commit is contained in:
Joe Orton 2011-01-31 10:18:58 +00:00
parent 0e9583d159
commit c187a279bc
4 changed files with 85 additions and 9 deletions

View File

@ -45,6 +45,7 @@ prog=httpd
pidfile=${PIDFILE-/var/run/httpd/httpd.pid}
lockfile=${LOCKFILE-/var/lock/subsys/httpd}
RETVAL=0
STOP_TIMEOUT=${STOP_TIMEOUT-10}
# The semantics of these two functions differ from the way apachectl does
# things -- attempting to start while running is a failure, and shutdown
@ -59,12 +60,12 @@ start() {
return $RETVAL
}
# When stopping httpd a delay of >10 second is required before SIGKILLing the
# httpd parent; this gives enough time for the httpd parent to SIGKILL any
# errant children.
# When stopping httpd, a delay (of default 10 second) is required
# before SIGKILLing the httpd parent; this gives enough time for the
# httpd parent to SIGKILL any errant children.
stop() {
echo -n $"Stopping $prog: "
killproc -p ${pidfile} -d 10 $httpd
killproc -p ${pidfile} -d ${STOP_TIMEOUT} $httpd
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}

51
httpd.mpm.xml Normal file
View File

@ -0,0 +1,51 @@
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<refentry>
<refentryinfo>
<date>@DATE@</date>
<title>Apache HTTP Server</title>
<productname>httpd</productname>
<productnumber>@VERSION@</productnumber>
</refentryinfo>
<refmeta>
<refentrytitle>@PROGNAME@</refentrytitle>
<manvolnum>8</manvolnum>
</refmeta>
<refnamediv>
<refname>@PROGNAME@</refname>
<refpurpose>httpd @MPM@ MPM executable</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>@PROGNAME@</command>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para>The <command>@PROGNAME@</command> executable is an
alternative build of the <command>httpd</command> executable which
uses the <emphasis>@MPM@</emphasis> Multi-Processing Module (MPM).
The executable accepts the same command-line arguments as
the <command>httpd</command> executable.</para>
<para>To configure the SysV init scripts to use this MPM, set the
<varname>HTTPD</varname> environment variable in
the <filename>/etc/sysconfig/httpd</filename> configuration file.</para>
</refsect1>
<refsect1>
<title>See also</title>
<para>httpd(8), <ulink url="http://httpd.apache.org/docs/2.2/mpm.html"/></para>
</refsect1>
</refentry>

View File

@ -20,6 +20,7 @@ Source12: welcome.conf
Source13: manual.conf
Source14: httpd.tmpfiles
# Documentation
Source31: httpd.mpm.xml
Source33: README.confd
# build/scripts patches
Patch1: httpd-2.1.10-apctl.patch
@ -40,7 +41,7 @@ Patch54: httpd-2.2.0-authnoprov.patch
License: ASL 2.0
Group: System Environment/Daemons
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires: autoconf, perl, pkgconfig, findutils
BuildRequires: autoconf, perl, pkgconfig, findutils, xmlto
BuildRequires: zlib-devel, libselinux-devel
BuildRequires: apr-devel >= 1.2.0, apr-util-devel >= 1.2.0, pcre-devel >= 5.0
Requires: initscripts >= 8.36, /etc/mime.types, system-logos >= 7.92.1-1
@ -96,7 +97,7 @@ the Apache HTTP Server.
Group: System Environment/Daemons
Summary: SSL/TLS module for the Apache HTTP Server
Epoch: 1
BuildRequires: openssl-devel, distcache-devel
BuildRequires: openssl-devel
Requires(post): openssl, /bin/cat
Requires(pre): httpd
Requires: httpd = 0:%{version}-%{release}, httpd-mmn = %{mmn}
@ -189,7 +190,7 @@ popd
# Build everything and the kitchen sink with the prefork build
mpmbuild prefork \
--enable-mods-shared=all \
--enable-ssl --with-ssl --enable-distcache \
--enable-ssl --with-ssl --disable-distcache \
--enable-proxy \
--enable-cache \
--enable-disk-cache \
@ -203,6 +204,14 @@ for f in %{mpms}; do
mpmbuild $f --enable-modules=none
done
# Build the man pages
ymdate=`date +'%b %Y'`
for mpm in %{mpms}; do
sed "s/@PROGNAME@/httpd.${mpm}/g;s/@DATE@/${ymdate}/g;s/@VERSION@/%{version}/g;s/@MPM@/${mpm}/g;" \
< $RPM_SOURCE_DIR/httpd.mpm.xml > httpd.${mpm}.8.xml
xmlto man httpd.${mpm}.8.xml
done
%install
rm -rf $RPM_BUILD_ROOT
@ -214,9 +223,10 @@ pushd prefork
make DESTDIR=$RPM_BUILD_ROOT install
popd
# install alternative MPMs
# install alternative MPMs, and man pages
for f in %{mpms}; do
install -m 755 ${f}/httpd $RPM_BUILD_ROOT%{_sbindir}/httpd.${f}
install -m 644 httpd.${f}.8 $RPM_BUILD_ROOT%{_mandir}/man8/httpd.${f}.8
done
# install conf file/directory
@ -371,7 +381,7 @@ fi
if [ ! -f %{sslcert} ] ; then
cat << EOF | %{_bindir}/openssl req -new -key %{sslkey} \
-x509 -days 365 -set_serial $RANDOM \
-x509 -days 365 -set_serial $RANDOM -extensions v3_req \
-out %{sslcert} 2>/dev/null
--
SomeState
@ -486,6 +496,12 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/httpd/build/*.sh
%changelog
* Mon Jan 31 2011 Joe Orton <jorton@redhat.com> - 2.2.17-7
- generate dummy mod_ssl cert with CA:FALSE constraint (#667841)
- add man page stubs for httpd.event, httpd.worker
- drop distcache support
- add STOP_TIMEOUT support to init script
* Sat Jan 8 2011 Joe Orton <jorton@redhat.com> - 2.2.17-6
- update default SSLCipherSuite per upstream trunk

View File

@ -20,3 +20,11 @@
# variable can be set.
#
#HTTPD_LANG=C
#
# When stopping the server a 10 second timeout is allowed before
# forcibly terminating the parent process (with a SIGKILL signal).
# To allow a longer delay, set the STOP_TIMEOUT variable.
#
#STOP_TIMEOUT=10
#