- add fix for SSL library string regression (PR 43334)

- use powered-by logo from system-logos (#250676)
- preserve timestamps for installed config files
This commit is contained in:
jorton 2007-09-17 19:02:35 +00:00
parent cd4fdd894e
commit 78b00cdebb
5 changed files with 115 additions and 13 deletions

View File

@ -0,0 +1,95 @@
--- httpd-2.2.6/modules/ssl/ssl_private.h.ssllibver
+++ httpd-2.2.6/modules/ssl/ssl_private.h
@@ -648,7 +648,7 @@ void ssl_die(void);
void ssl_log_ssl_error(const char *, int, int, server_rec *);
/** Variables */
-void ssl_var_register(void);
+void ssl_var_register(apr_pool_t *p);
char *ssl_var_lookup(apr_pool_t *, server_rec *, conn_rec *, request_rec *, char *);
const char *ssl_ext_lookup(apr_pool_t *p, conn_rec *c, int peer, const char *oid);
--- httpd-2.2.6/modules/ssl/mod_ssl.c.ssllibver
+++ httpd-2.2.6/modules/ssl/mod_ssl.c
@@ -500,7 +500,7 @@ static void ssl_register_hooks(apr_pool_
ap_hook_insert_filter (ssl_hook_Insert_Filter, NULL,NULL, APR_HOOK_MIDDLE);
/* ap_hook_handler (ssl_hook_Upgrade, NULL,NULL, APR_HOOK_MIDDLE); */
- ssl_var_register();
+ ssl_var_register(p);
APR_REGISTER_OPTIONAL_FN(ssl_proxy_enable);
APR_REGISTER_OPTIONAL_FN(ssl_engine_disable);
--- httpd-2.2.6/modules/ssl/ssl_engine_vars.c.ssllibver
+++ httpd-2.2.6/modules/ssl/ssl_engine_vars.c
@@ -58,12 +58,30 @@ static int ssl_is_https(conn_rec *c)
return sslconn && sslconn->ssl;
}
-void ssl_var_register(void)
+static const char var_interface[] = "mod_ssl/" MOD_SSL_VERSION;
+static char var_library_interface[] = SSL_LIBRARY_TEXT;
+static char *var_library = NULL;
+
+void ssl_var_register(apr_pool_t *p)
{
APR_REGISTER_OPTIONAL_FN(ssl_is_https);
APR_REGISTER_OPTIONAL_FN(ssl_var_lookup);
APR_REGISTER_OPTIONAL_FN(ssl_ext_lookup);
- return;
+
+ /* Perform once-per-process library version determination: */
+ var_library = apr_pstrdup(p, SSL_LIBRARY_DYNTEXT);
+
+ if ((cp = strchr(var_library, ' ')) != NULL) {
+ *cp = '/';
+ if ((cp2 = strchr(cp, ' ')) != NULL)
+ *cp2 = NUL;
+ }
+
+ if ((cp = strchr(var_library_interface, ' ')) != NULL) {
+ *cp = '/';
+ if ((cp2 = strchr(cp, ' ')) != NULL)
+ *cp2 = NUL;
+ }
}
/* This function must remain safe to use for a non-SSL connection. */
@@ -635,34 +653,14 @@ static void ssl_var_lookup_ssl_cipher_bi
static char *ssl_var_lookup_ssl_version(apr_pool_t *p, char *var)
{
- static char interface[] = "mod_ssl/" MOD_SSL_VERSION;
- static char library_interface[] = SSL_LIBRARY_TEXT;
- static char *library = NULL;
- char *result;
-
- if (!library) {
- char *cp, *cp2;
- library = apr_pstrdup(p, SSL_LIBRARY_DYNTEXT);
- if ((cp = strchr(library, ' ')) != NULL) {
- *cp = '/';
- if ((cp2 = strchr(cp, ' ')) != NULL)
- *cp2 = NUL;
- }
- if ((cp = strchr(library_interface, ' ')) != NULL) {
- *cp = '/';
- if ((cp2 = strchr(cp, ' ')) != NULL)
- *cp2 = NUL;
- }
- }
-
if (strEQ(var, "INTERFACE")) {
- result = apr_pstrdup(p, interface);
+ result = apr_pstrdup(p, var_interface);
}
else if (strEQ(var, "LIBRARY_INTERFACE")) {
- result = apr_pstrdup(p, library_interface);
+ result = apr_pstrdup(p, var_library_interface);
}
else if (strEQ(var, "LIBRARY")) {
- result = apr_pstrdup(p, library);
+ result = apr_pstrdup(p, var_library);
}
else {
result = NULL;

View File

@ -538,7 +538,7 @@ ServerSignature On
Alias /icons/ "/var/www/icons/" Alias /icons/ "/var/www/icons/"
<Directory "/var/www/icons"> <Directory "/var/www/icons">
Options Indexes MultiViews Options Indexes MultiViews FollowSymLinks
AllowOverride None AllowOverride None
Order allow,deny Order allow,deny
Allow from all Allow from all

View File

@ -6,14 +6,13 @@
Summary: Apache HTTP Server Summary: Apache HTTP Server
Name: httpd Name: httpd
Version: 2.2.6 Version: 2.2.6
Release: 2 Release: 3
URL: http://httpd.apache.org/ URL: http://httpd.apache.org/
Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.gz Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.gz
Source1: index.html Source1: index.html
Source3: httpd.logrotate Source3: httpd.logrotate
Source4: httpd.init Source4: httpd.init
Source5: httpd.sysconf Source5: httpd.sysconf
Source7: powered_by_fedora.png
Source10: httpd.conf Source10: httpd.conf
Source11: ssl.conf Source11: ssl.conf
Source12: welcome.conf Source12: welcome.conf
@ -37,13 +36,14 @@ Patch25: httpd-2.0.54-selinux.patch
# Bug fixes # Bug fixes
Patch54: httpd-2.2.0-authnoprov.patch Patch54: httpd-2.2.0-authnoprov.patch
Patch55: httpd-2.2.4-oldflush.patch Patch55: httpd-2.2.4-oldflush.patch
Patch56: httpd-2.2.6-ssllibver.patch
License: ASL 2.0 License: ASL 2.0
Group: System Environment/Daemons Group: System Environment/Daemons
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires: autoconf, perl, pkgconfig, findutils, ed BuildRequires: autoconf, perl, pkgconfig, findutils, ed
BuildRequires: db4-devel, expat-devel, zlib-devel, libselinux-devel BuildRequires: db4-devel, expat-devel, zlib-devel, libselinux-devel
BuildRequires: apr-devel >= 1.2.0, apr-util-devel >= 1.2.0, pcre-devel >= 5.0 BuildRequires: apr-devel >= 1.2.0, apr-util-devel >= 1.2.0, pcre-devel >= 5.0
Requires: initscripts >= 8.36, /etc/mime.types Requires: initscripts >= 8.36, /etc/mime.types, system-logos >= 7.92.1-1
Obsoletes: httpd-suexec Obsoletes: httpd-suexec
Requires(pre): /usr/sbin/useradd Requires(pre): /usr/sbin/useradd
Requires(post): chkconfig Requires(post): chkconfig
@ -124,6 +124,7 @@ Security (TLS) protocols.
%patch54 -p1 -b .authnoprov %patch54 -p1 -b .authnoprov
%patch55 -p1 -b .oldflush %patch55 -p1 -b .oldflush
%patch56 -p1 -b .ssllibver
# Patch in vendor/release string # Patch in vendor/release string
sed "s/@RELEASE@/%{vstring}/" < %{PATCH20} | patch -p1 sed "s/@RELEASE@/%{vstring}/" < %{PATCH20} | patch -p1
@ -226,15 +227,16 @@ mkdir $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d
install -m 644 $RPM_SOURCE_DIR/README.confd \ install -m 644 $RPM_SOURCE_DIR/README.confd \
$RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/README $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/README
for f in ssl.conf welcome.conf manual.conf proxy_ajp.conf; do for f in ssl.conf welcome.conf manual.conf proxy_ajp.conf; do
install -m 644 $RPM_SOURCE_DIR/$f $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/$f install -m 644 -p $RPM_SOURCE_DIR/$f \
$RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/$f
done done
rm $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf/*.conf rm $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf/*.conf
install -m 644 $RPM_SOURCE_DIR/httpd.conf \ install -m -p 644 $RPM_SOURCE_DIR/httpd.conf \
$RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf/httpd.conf $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf/httpd.conf
mkdir $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig mkdir $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig
install -m 644 $RPM_SOURCE_DIR/httpd.sysconf \ install -m 644 -p $RPM_SOURCE_DIR/httpd.sysconf \
$RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/httpd $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/httpd
# for holding mod_dav lock database # for holding mod_dav lock database
@ -256,8 +258,7 @@ echo %{mmn} > $RPM_BUILD_ROOT%{_includedir}/httpd/.mmn
# docroot # docroot
mkdir $RPM_BUILD_ROOT%{contentdir}/html mkdir $RPM_BUILD_ROOT%{contentdir}/html
install -m 644 $RPM_SOURCE_DIR/index.html \ install -m 644 noindex.html $RPM_BUILD_ROOT%{contentdir}/error/noindex.html
$RPM_BUILD_ROOT%{contentdir}/error/noindex.html
# remove manual sources # remove manual sources
find $RPM_BUILD_ROOT%{contentdir}/manual \( \ find $RPM_BUILD_ROOT%{contentdir}/manual \( \
@ -274,8 +275,9 @@ for f in `find $RPM_BUILD_ROOT%{contentdir}/manual -name \*.html -type f`; do
done done
set -x set -x
install -m 644 $RPM_SOURCE_DIR/powered_by_fedora.png \ # Symlink for the powered-by-$DISTRO image:
$RPM_BUILD_ROOT%{contentdir}/icons ln -s ../../..%{_datadir}/pixmaps/poweredby.png \
$RPM_BUILD_ROOT%{contentdir}/icons/poweredby.png
# logs # logs
rmdir $RPM_BUILD_ROOT%{_sysconfdir}/httpd/logs rmdir $RPM_BUILD_ROOT%{_sysconfdir}/httpd/logs
@ -293,7 +295,7 @@ install -m755 $RPM_SOURCE_DIR/httpd.init \
# install log rotation stuff # install log rotation stuff
mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d
install -m644 $RPM_SOURCE_DIR/httpd.logrotate \ install -m 644 -p $RPM_SOURCE_DIR/httpd.logrotate \
$RPM_BUILD_ROOT/etc/logrotate.d/httpd $RPM_BUILD_ROOT/etc/logrotate.d/httpd
# fix man page paths # fix man page paths
@ -476,6 +478,11 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/httpd/build/*.sh %{_libdir}/httpd/build/*.sh
%changelog %changelog
* Mon Sep 17 2007 Joe Orton <jorton@redhat.com> 2.2.6-3
- add fix for SSL library string regression (PR 43334)
- use powered-by logo from system-logos (#250676)
- preserve timestamps for installed config files
* Fri Sep 7 2007 Joe Orton <jorton@redhat.com> 2.2.6-2 * Fri Sep 7 2007 Joe Orton <jorton@redhat.com> 2.2.6-2
- update to 2.2.6 (#250757, #282761) - update to 2.2.6 (#250757, #282761)

View File

@ -115,7 +115,7 @@
<div class="logos"> <div class="logos">
<p>You are free to use the images below on Apache and Fedora powered HTTP servers. Thanks for using Apache and Fedora!</p> <p>You are free to use the images below on Apache and Fedora powered HTTP servers. Thanks for using Apache and Fedora!</p>
<p><a href="http://httpd.apache.org/"><img src="/icons/apache_pb2.gif" alt="[ Powered by Apache ]"/></a> <a href="http://fedoraproject.org/"><img src="/icons/powered_by_fedora.png" alt="[ Powered by Fedora ]" width="88" height="31" /></a></p> <p><a href="http://httpd.apache.org/"><img src="/icons/apache_pb2.gif" alt="[ Powered by Apache ]"/></a> <a href="http://fedoraproject.org/"><img src="/icons/poweredby.png" alt="[ Powered by Fedora ]" width="88" height="31" /></a></p>
</div> </div>
</div> </div>
</div> </div>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB