# - drop mod_case_filter* or find summary and description for them
# - build modules only once (not with each mpm)
# - FYI: http://wiki.apache.org/httpd/InternalDummyConnection
+
+
+# 2.4 TODO
+#
+# mod_authn/z_default changed into mod_authn/z_core - trigger existing configs?
+
+
# Conditional build:
%bcond_without ssl # build without SSL support
%bcond_without ldap # build without LDAP support
jednak zbyt obszernie przetestowany, więc jest oznaczony jako
eksperymentalny.
-%package mod_authn_alias
-Summary: Apache module that provides the ability to create extended authentication
-Summary(pl.UTF-8): Moduł Apache'a umożliwiający tworzenie rozszerzonego uwierzytelniania
-Group: Networking/Daemons/HTTP
-URL: http://httpd.apache.org/docs/2.2/mod/mod_authn_alias.html
-Requires: %{name}-base = %{version}-%{release}
-Provides: apache(mod_authn_alias) = %{version}-%{release}
-
-%description mod_authn_alias
-This module allows extended authentication providers to be created
-within the configuration file and assigned an alias name.
-
-%description mod_authn_alias -l pl.UTF-8
-Ten moduł umożliwia tworzenie rozszerzonych sposobów uwierzytelniania
-w pliku konfiguracyjnym i nadawanie im aliasów.
-
%package mod_authn_anon
Summary: Apache module that allows "anonymous" user access to authenticated areas
Summary(pl.UTF-8): Moduł Apache'a umożliwiający dostęp anonimowych użytkowników do stref uwierzytelnianych
mod_auth_digest i mod_auth_basic uwierzytelnianie użytkowników poprzez
wyszukiwanie w tabelach haseł DBM.
-%package mod_authn_default
+%package mod_authn_core
Summary: Apache module that rejects any credentials supplied by the user
Summary(pl.UTF-8): Moduł Apache'a odrzucający wszystkie dane podane przez użytkownika
Group: Networking/Daemons/HTTP
-URL: http://httpd.apache.org/docs/2.2/mod/mod_authn_default.html
+URL: http://httpd.apache.org/docs/2.4/mod/mod_authn_core.html
Requires: %{name}-base = %{version}-%{release}
-Provides: apache(mod_authn_default) = %{version}-%{release}
+Provides: apache(mod_authn_core) = %{version}-%{release}
+Obsoletes: apache-mod_authn_default < 2.4
-%description mod_authn_default
+%description mod_authn_core
This module is designed to be the fallback module, if you don't have
configured an authentication module like mod_auth_basic. It simply
rejects any credentials supplied by the user.
-%description mod_authn_default -l pl.UTF-8
+%description mod_authn_core -l pl.UTF-8
Ten moduł został pomyślany jako domyślny moduł uwierzytelniający,
jeśli nie skonfigurowano modułu uwierzytelniającego takiego jak
mod_auth_basic. Moduł ten po prostu odrzuca wszelkie dane przekazane
WWW dla uwierzytelnionych użytkowników na podstawie ich przynależności
do grupy zapisywanej w pliku DBM.
-%package mod_authz_default
+%package mod_authz_core
Summary: Apache module that rejects any authorization request
Summary(pl.UTF-8): Moduł Apache'a odrzucający wszystkie żądania autoryzacji
Group: Networking/Daemons/HTTP
-URL: http://httpd.apache.org/docs/2.2/mod/mod_authz_default.html
+URL: http://httpd.apache.org/docs/2.4/mod/mod_authz_core.html
Requires: %{name}-base = %{version}-%{release}
-Provides: apache(mod_authz_default) = %{version}-%{release}
+Provides: apache(mod_authz_core) = %{version}-%{release}
+Obsoletes: apache-mod_authz_default < 2.4
-%description mod_authz_default
+%description mod_authz_core
This module is designed to be the fallback module, if you don't have
configured an authorization module like mod_authz_user or
mod_authz_groupfile. It simply rejects any authorization request.
-%description mod_authz_default -l pl.UTF-8
+%description mod_authz_core -l pl.UTF-8
Ten moduł został pomyślany jako domyślny moduł autoryzujący jeśli nie
skonfigurowano modułu autoryzującego takiego jak mod_authz_user czy
mod_authz_groupfile. Moduł ten po prostu odrzuca wszelkie żądania
Moduł umożliwia na dynamiczne konfigurowanie masowej ilości serwerów
wirtualnych.
+%package mod_access_compat
+Summary: Group authorizations based on host (name or IP address)
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_access_compat.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_access_compat) = %{version}-%{release}
+
+%description mod_access_compat
+The directives provided by mod_access_compat are used in <Directory>,
+<Files>, and <Location> sections as well as .htaccess files to control
+access to particular parts of the server. Access can be controlled
+based on the client hostname, IP address, or other characteristics of
+the client request, as captured in environment variables. The Allow
+and Deny directives are used to specify which clients are or are not
+allowed access to the server, while the Order directive sets the
+default access state, and configures how the Allow and Deny directives
+interact with each other.
+
+%package mod_allowmethods
+Summary: Easily restrict what HTTP methods can be used on the server
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_allowmethods.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_allowmethods) = %{version}-%{release}
+
+%description mod_allowmethods
+This module makes it easy to restrict what HTTP methods can used on an
+server.
+
+%package mod_auth_form
+Summary: Form authentication
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_auth_form.html
+Requires: %{name}-base = %{version}-%{release}
+Requires: %{name}-mod_session = %{version}-%{release}
+Provides: apache(mod_auth_form) = %{version}-%{release}
+
+%description mod_auth_form
+This module allows the use of an HTML login form to restrict access by
+looking up users in the given providers. HTML forms require
+significantly more configuration than the alternatives,
+however an HTML login form can provide a much friendlier experience
+for end users.
+
+%package mod_authn_socache
+Summary: Manages a cache of authentication credentials to relieve the load on backends
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_authn_socache.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_authn_socache) = %{version}-%{release}
+
+%description mod_authn_socache
+Maintains a cache of authentication credentials, so that a new backend
+lookup is not required for every authenticated request.
+
+%package mod_authz_dbd
+Summary: Group Authorization and Login using SQL
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_authz_dbd.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_authz_dbd) = %{version}-%{release}
+
+%description mod_authz_dbd
+This module provides authorization capabilities so that authenticated
+users can be allowed or denied access to portions of the web site by
+group membership.
+
+%package mod_buffer
+Summary: Support for request buffering
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_buffer.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_buffer) = %{version}-%{release}
+
+%description mod_buffer
+This module provides the ability to buffer the input and output filter
+stacks.
+
+%package mod_cache_disk
+Summary: Disk based storage module for the HTTP caching filter
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_cache_disk.html
+Requires: %{name}-base = %{version}-%{release}
+Requires: %{name}-mod_cache = %{version}-%{release}
+Provides: apache(mod_cache_disk) = %{version}-%{release}
+
+%description mod_cache_disk
+Implements a disk based storage manager for mod_cache.
+
+%package mod_data
+Summary: Convert response body into an RFC2397 data URL
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_data.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_data) = %{version}-%{release}
+
+%description mod_data
+This module provides the ability to convert a response into an RFC2397
+data URL.
+
+%package mod_dialup
+Summary: Send static content at a bandwidth rate limit, defined by the various old modem standards
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_dialup.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_dialup) = %{version}-%{release}
+
+%description mod_dialup
+It is a module that sends static content at a bandwidth rate limit,
+defined by the various old modem standards.
+
+%package mod_heartbeat
+Summary: Sends messages with server status to frontend proxy
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_heartbeat.html
+Requires: %{name}-base = %{version}-%{release}
+Requires: %{name}-mod_status = %{version}-%{release}
+Requires: %{name}-mod_watchdog = %{version}-%{release}
+Provides: apache(mod_heartbeat) = %{version}-%{release}
+
+%description mod_heartbeat
+mod_heartbeat sends multicast messages to a mod_heartmonitor listener
+that advertises the servers current connection count. Usually,
+mod_heartmonitor will be running on a proxy server with
+mod_lbmethod_heartbeat loaded, which allows ProxyPass to use the
+"heartbeat" lbmethod inside of ProxyPass.
+
+mod_heartbeat itself is loaded on the origin server(s) that serve
+requests through the proxy server(s).
+
+%package mod_heartmonitor
+Summary: Centralized monitor for mod_heartbeat origin servers
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_heartmonitor.html
+Requires: %{name}-base = %{version}-%{release}
+Requires: %{name}-mod_status = %{version}-%{release}
+Requires: %{name}-mod_watchdog = %{version}-%{release}
+Provides: apache(mod_heartmonitor) = %{version}-%{release}
+
+%description mod_heartmonitor
+mod_heartmonitor listens for server status messages generated by
+mod_heartbeat enabled origin servers and makes their status available
+to mod_lbmethod_heartbeat. This allows ProxyPass to use the
+"heartbeat" lbmethod inside of ProxyPass.
+
+This module uses the services of mod_slotmem_shm when available
+instead of flat-file storage. No configuration is required to use
+mod_slotmem_shm.
+
+%package mod_lbmethod
+Summary: Provides bybusiness, byrequests, bytraffic and heartbeat load balancing schedulers
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_lbmethod_bybusiness.html
+#URL: http://httpd.apache.org/docs/2.4/mod/mod_lbmethod_byrequests.html
+#URL: http://httpd.apache.org/docs/2.4/mod/mod_lbmethod_bytraffic.html
+#URL: http://httpd.apache.org/docs/2.4/mod/mod_lbmethod_heartbeat.html
+Requires: %{name}-base = %{version}-%{release}
+Requires: %{name}-mod_proxy = %{version}-%{release}
+Provides: apache(mod_lbmethod) = %{version}-%{release}
+Provides: apache(mod_lbmethod_bybusiness) = %{version}-%{release}
+Provides: apache(mod_lbmethod_byrequests) = %{version}-%{release}
+Provides: apache(mod_lbmethod_bytraffic) = %{version}-%{release}
+Provides: apache(mod_lbmethod_heartbeat) = %{version}-%{release}
+
+%description mod_lbmethod
+Provides bybusiness, byrequests, bytraffic and heartbeat load
+balancing schedulers.
+
+%package mod_log_debug
+Summary: Additional configurable debug logging
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_log_debug.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_log_debug) = %{version}-%{release}
+
+%description mod_log_debug
+Additional configurable debug logging.
+
+%package mod_ratelimit
+Summary: Bandwidth Rate Limiting for Clients
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_ratelimit.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_ratelimit) = %{version}-%{release}
+
+%description mod_ratelimit
+Provides a filter named RATE_LIMIT to limit client bandwidth.
+The connection speed to be simulated is specified, in KiB/s,
+using the environment variable rate-limit.
+
+%package mod_reflector
+Summary: Reflect a request body as a response via the output filter stack
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_reflector.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_reflector) = %{version}-%{release}
+
+%description mod_reflector
+This module allows request bodies to be reflected back to the client,
+in the process passing the request through the output filter stack.
+A suitably configured chain of filters can be used to transform the
+request into a response. This module can be used to turn an output
+filter into an HTTP service.
+
+%package mod_remoteip
+Summary: Replaces the original client IP address for the connection
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_remoteip.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_remoteip) = %{version}-%{release}
+
+%description mod_remoteip
+Replaces the original client IP address for the connection with the
+useragent IP address list presented by a proxies or a load balancer
+via the request headers.
+
+%package mod_request
+Summary: Filters to handle and make available HTTP request bodies
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_request.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_request) = %{version}-%{release}
+
+%description mod_request
+Filters to handle and make available HTTP request bodies.
+
+%package mod_sed
+Summary: Filter Input (request) and Output (response) content using sed syntax
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_sed.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_sed) = %{version}-%{release}
+
+%description mod_sed
+Filter Input (request) and Output (response) content using sed syntax.
+
+%package mod_session
+Summary: Session support
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_session.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_session) = %{version}-%{release}
+Provides: apache(mod_session_cookie) = %{version}-%{release}
+Provides: apache(mod_session_dbd) = %{version}-%{release}
+
+%description mod_session
+Session support.
+
+%package mod_slotmem
+Summary: Slot-based shared memory provider
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_slotmem_plain.html
+#URL: http://httpd.apache.org/docs/2.4/mod/mod_slotmem_shm.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_slotmem) = %{version}-%{release}
+Provides: apache(mod_slotmem_plain) = %{version}-%{release}
+Provides: apache(mod_slotmem_shm) = %{version}-%{release}
+
+%description mod_slotmem
+Slot-based shared memory provider.
+
+%package mod_socache
+Summary: Shared object cache provider
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_socache_dbm.html
+#URL: http://httpd.apache.org/docs/2.4/mod/mod_socache_memcache.html
+#URL: http://httpd.apache.org/docs/2.4/mod/mod_socache_shmcb.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_socache) = %{version}-%{release}
+Provides: apache(mod_socache_dbm) = %{version}-%{release}
+Provides: apache(mod_socache_memcache) = %{version}-%{release}
+Provides: apache(mod_socache_shmcb) = %{version}-%{release}
+
+%description mod_socache
+Shared object cache provider.
+
+%package mod_unixd
+Summary: Basic (required) security for Unix-family platforms
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_unixd.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_unixd) = %{version}-%{release}
+
+%description mod_unixd
+Basic (required) security for Unix-family platforms.
+
+%package mod_watchdog
+Summary: Provides infrastructure for other modules to periodically run tasks
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_watchdog.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_watchdog) = %{version}-%{release}
+
+%description mod_watchdog
+Provides infrastructure for other modules to periodically run tasks.
+
+%package mod_xml2enc
+Summary: Enhanced charset/internationalisation support for libxml2-based filter modules
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_xml2enc.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_xml2enc) = %{version}-%{release}
+
+%description mod_xml2enc
+Enhanced charset/internationalisation support for libxml2-based filter
+modules.
+
%package -n htpasswd-%{name}
Summary: Apache 2 htpasswd utility: manage user files for basic authentication
Summary(pl.UTF-8): Narzędzie htpasswd z Apache'a 2 do zarządzania plikami uwierzytelnienia basic
%{?with_itk:%patch15 -p1}
%patch16 -p1
-# using system apr, apr-util and pcre
-#%%{__rm} -r srclib/{apr,apr-util,pcre}
-
# sanity check
MODULES_API=`awk '/#define MODULE_MAGIC_NUMBER_MAJOR/ {print $3}' include/ap_mmn.h`
if [ "$MODULES_API" != "%_apache_modules_api" ]; then
ln -s %{_libexecdir} $RPM_BUILD_ROOT%{_sysconfdir}/modules
ln -s %{_localstatedir}/run/httpd $RPM_BUILD_ROOT%{_sysconfdir}/run
ln -s %{_var}/log/httpd $RPM_BUILD_ROOT%{_sysconfdir}/logs
-mv $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf.orig
-ln -s conf.d $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
+rm $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/httpd
cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/httpd
install %{SOURCE30} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
-echo "LoadModule alias_module modules/mod_alias.so" > $CFG/00_mod_alias.conf
+echo "LoadModule alias_module modules/mod_alias.so" > $CFG/00_mod_alias.conf
echo "LoadModule authn_file_module modules/mod_authn_file.so" > $CFG/00_mod_authn_file.conf
echo "LoadModule authn_dbm_module modules/mod_authn_dbm.so" > $CFG/00_mod_authn_dbm.conf
echo "LoadModule authn_anon_module modules/mod_authn_anon.so" > $CFG/00_mod_authn_anon.conf
echo "LoadModule authn_dbd_module modules/mod_authn_dbd.so" > $CFG/00_mod_authn_dbd.conf
-echo "LoadModule authn_default_module modules/mod_authn_default.so" > $CFG/00_mod_authn_default.conf
-echo "LoadModule authn_alias_module modules/mod_authn_alias.so" > $CFG/00_mod_authn_alias.conf
+echo "LoadModule authn_core_module modules/mod_authn_core.so" > $CFG/00_mod_authn_core.conf
echo "LoadModule authz_groupfile_module modules/mod_authz_groupfile.so" > $CFG/00_mod_authz_groupfile.conf
echo "LoadModule authz_user_module modules/mod_authz_user.so" > $CFG/00_mod_authz_user.conf
echo "LoadModule authz_dbm_module modules/mod_authz_dbm.so" > $CFG/00_mod_authz_dbm.conf
echo "LoadModule authz_owner_module modules/mod_authz_owner.so" > $CFG/00_mod_authz_owner.conf
echo "LoadModule authnz_ldap_module modules/mod_authnz_ldap.so" > $CFG/00_mod_authnz_ldap.conf
-echo "LoadModule authz_default_module modules/mod_authz_default.so" > $CFG/00_mod_authz_default.conf
+echo "LoadModule authz_core_module modules/mod_authz_core.so" > $CFG/00_mod_authz_core.conf
echo "LoadModule auth_basic_module modules/mod_auth_basic.so" > $CFG/00_mod_auth_basic.conf
echo "LoadModule dbd_module modules/mod_dbd.so" > $CFG/00_mod_dbd.conf
%if %{with bucketeer}
echo "LoadModule unique_id_module modules/mod_unique_id.so" > $CFG/00_mod_unique_id.conf
echo "LoadModule substitute_module modules/mod_substitute.so" > $CFG/00_mod_substitute.conf
echo "LoadModule reqtimeout_module modules/mod_reqtimeout.so" >> $CFG/00_mod_reqtimeout.conf
+echo "LoadModule access_compat_module modules/mod_access_compat.so" > $CFG/00_mod_access_compat.conf
+echo "LoadModule allowmethods_module modules/mod_allowmethods.so" > $CFG/00_mod_allowmethods.conf
+echo "LoadModule auth_form_module modules/mod_auth_form.so" > $CFG/00_mod_auth_form.conf
+echo "LoadModule authn_socache_module modules/mod_authn_socache.so" > $CFG/00_mod_authn_socache.conf
+echo "LoadModule authz_dbd_module modules/mod_authz_dbd.so" > $CFG/00_mod_authz_dbd.conf
+echo "LoadModule buffer_module modules/mod_buffer.so" > $CFG/00_mod_buffer.conf
+echo "LoadModule cache_disk_module modules/mod_cache_disk.so" > $CFG/00_mod_cache_disk.conf
+echo "LoadModule data_module modules/mod_data.so" > $CFG/00_mod_data.conf
+echo "LoadModule dialup_module modules/mod_dialup.so" > $CFG/00_mod_dialup.conf
+echo "LoadModule heartbeat_module modules/mod_heartbeat.so" > $CFG/00_mod_heartbeat.conf
+echo "LoadModule heartmonitor_module modules/mod_heartmonitor.so" > $CFG/00_mod_heartmonitor.conf
+echo "#LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so" > $CFG/00_mod_lbmethod.conf
+echo "#LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so" >> $CFG/00_mod_lbmethod.conf
+echo "#LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so" >> $CFG/00_mod_lbmethod.conf
+echo "#LoadModule lbmethod_heartbeat_module modules/mod_lbmethod_heartbeat.so" >> $CFG/00_mod_lbmethod.conf
+echo "LoadModule log_debug_module modules/mod_log_debug.so" > $CFG/00_mod_log_debug.conf
+echo "LoadModule ratelimit_module modules/mod_ratelimit.so" > $CFG/00_mod_ratelimit.conf
+echo "LoadModule reflector_module modules/mod_reflector.so" > $CFG/00_mod_reflector.conf
+echo "LoadModule remoteip_module modules/mod_remoteip.so" > $CFG/00_mod_remoteip.conf
+echo "LoadModule request_module modules/mod_request.so" > $CFG/00_mod_request.conf
+echo "LoadModule sed_module modules/mod_sed.so" > $CFG/00_mod_sed.conf
+echo "LoadModule session_module modules/mod_session.so" > $CFG/00_mod_session.conf
+echo "#LoadModule session_cookie_module modules/mod_sessioni_cookie.so" >> $CFG/00_mod_session.conf
+echo "#LoadModule session_dbd_module modules/mod_session_dbd.so" >> $CFG/00_mod_session.conf
+echo "LoadModule slotmem_plain_module modules/mod_slotmem_plain.so" > $CFG/00_mod_slotmem.conf
+echo "#LoadModule slotmem_shm_module modules/mod_slotmem_shm.so" >> $CFG/00_mod_slotmem.conf
+echo "#LoadModule socache_dbm_module modules/mod_socache_dbm.so" > $CFG/00_mod_socache.conf
+echo "#LoadModule socache_memcache_module modules/mod_socache_memcache.so" >> $CFG/00_mod_socache.conf
+echo "#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so" >> $CFG/00_mod_socache.conf
+echo "LoadModule unixd_module modules/mod_unixd.so" > $CFG/00_mod_unixd.conf
+echo "LoadModule watchdog_module modules/mod_watchdog.so" > $CFG/00_mod_watchdog.conf
+echo "LoadModule xml2enc_module modules/mod_xml2enc.so" > $CFG/00_mod_xml2enc.conf
# anything in style dir not ending with .css is trash
%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/manual/style/{lang,latex,xsl}
EOF
+%pretrans base -- %{name} < 2.4.0
+if [ -f /etc/sysconfig/httpd ]; then
+ MPM=$(grep HTTPD_MPM /etc/sysconfig/httpd |sed 's,HTTPD_MPM=,,;s,",,g')
+ echo "LoadModule mpm_${MPM}_module modules/mod_mpm_${MPM}.so" > /etc/httpd/conf.d/10_mpm.conf.rpmnew
+ cat /etc/httpd/conf.d/10_mpm.conf >> /etc/httpd/conf.d/10_mpm.conf.rpmnew
+ mv /etc/httpd/conf.d/10_mpm.conf.rpmnew /etc/httpd/conf.d/10_mpm.conf
+fi
+
+%triggerpostun base -- %{name} < 2.4.0
+%banner -e %{name} << EOF
+WARNING!!!
+Since apache-2.4 mod_authn_alias has been obsoleted.
+If you use access control (Deny,Allow) install mod_access_compat by doing:
+poldek -ivh %{name}-mod_access_compat
+
+If you use "User" statement install mod_unixd by doing:
+poldek -ivh %{name}-mod_unixd
+
+In apache-2.4 mod_authn_default and mod_authz_default have been obsoleted by
+mod_authn_core and authz_core. If you used these modules install the new ones by invoking:
+poldek -ivh %{name}-mod_authn_core
+and/or
+poldek -ivh %{name}-mod_authz_core
+
+For more information on how to upgrade from Apache 2.2 visit:
+http://httpd.apache.org/docs/2.4/upgrading.html
+EOF
+
+
%triggerpostun mod_ssl -- %{name}-mod_ssl < 1:2.2.0-3.1
cp -f /etc/httpd/conf.d/40_mod_ssl.conf{,.rpmsave}
sed -i -e '
%module_postun
%module_scripts mod_actions
-%module_scripts mod_alias
%module_scripts mod_asis
%module_scripts mod_auth_basic
%module_scripts mod_auth_dbm
%module_scripts mod_auth_digest
-%module_scripts mod_authn_alias
%module_scripts mod_authn_anon
%module_scripts mod_authn_dbd
%module_scripts mod_authn_dbm
-%module_scripts mod_authn_default
+%module_scripts mod_authn_core
%module_scripts mod_authn_file
%module_scripts mod_authnz_ldap
%module_scripts mod_authz_dbm
-%module_scripts mod_authz_default
+%module_scripts mod_authz_core
%module_scripts mod_authz_groupfile
%module_scripts mod_authz_host
%module_scripts mod_authz_owner
%module_scripts mod_version
%module_scripts mod_vhost_alias
%module_scripts suexec
+%module_scripts mod_access_compat
+%module_scripts mod_allowmethods
+%module_scripts mod_auth_form
+%module_scripts mod_authn_socache
+%module_scripts mod_authz_dbd
+%module_scripts mod_buffer
+%module_scripts mod_cache_disk
+%module_scripts mod_data
+%module_scripts mod_dialup
+%module_scripts mod_heartbeat
+%module_scripts mod_heartmonitor
+%module_scripts mod_lbmethod
+%module_scripts mod_log_debug
+%module_scripts mod_ratelimit
+%module_scripts mod_reflector
+%module_scripts mod_remoteip
+%module_scripts mod_request
+%module_scripts mod_sed
+%module_scripts mod_session
+%module_scripts mod_slotmem
+%module_scripts mod_socache
+%module_scripts mod_unixd
+%module_scripts mod_watchdog
+%module_scripts mod_xml2enc
%post cgi_test
if [ "$1" = "1" ]; then
%{_sysconfdir}/modules
%{_sysconfdir}/run
%{_sysconfdir}/logs
-%ghost %{_sysconfdir}/httpd.conf
%attr(750,root,root) %dir %{_sysconfdir}/conf.d
%attr(750,root,root) %dir %{_sysconfdir}/vhosts.d
%attr(750,root,root) %dir %{_sysconfdir}/webapps.d
%attr(640,root,root) %{_sysconfdir}/magic
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/httpd
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/*
+# MPM modules
+%attr(755,root,root) %{_libexecdir}/mod_mpm_event.so
+%attr(755,root,root) %{_libexecdir}/mod_mpm_prefork.so
+%attr(755,root,root) %{_libexecdir}/mod_mpm_worker.so
%dir %{_libexecdir}
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_auth_digest.conf
%attr(755,root,root) %{_libexecdir}/mod_auth_digest.so
-#%files mod_authn_alias
-#%defattr(644,root,root,755)
-#%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authn_alias.conf
-#%attr(755,root,root) %{_libexecdir}/mod_authn_alias.so
-
%files mod_authn_anon
%defattr(644,root,root,755)
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authn_anon.conf
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authn_dbm.conf
%attr(755,root,root) %{_libexecdir}/mod_authn_dbm.so
-#%files mod_authn_default
-#%defattr(644,root,root,755)
-#%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authn_default.conf
-#%attr(755,root,root) %{_libexecdir}/mod_authn_default.so
+%files mod_authn_core
+%defattr(644,root,root,755)
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authn_core.conf
+%attr(755,root,root) %{_libexecdir}/mod_authn_core.so
%files mod_authn_file
%defattr(644,root,root,755)
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authz_dbm.conf
%attr(755,root,root) %{_libexecdir}/mod_authz_dbm.so
-#%files mod_authz_default
-#%defattr(644,root,root,755)
-#%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authz_default.conf
-#%attr(755,root,root) %{_libexecdir}/mod_authz_default.so
+%files mod_authz_core
+%defattr(644,root,root,755)
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authz_core.conf
+%attr(755,root,root) %{_libexecdir}/mod_authz_core.so
%files mod_authz_groupfile
%defattr(644,root,root,755)
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_cache.conf
%attr(755,root,root) %{_sbindir}/htcacheclean
%attr(755,root,root) %{_libexecdir}/mod_cache.so
-#%attr(755,root,root) %{_libexecdir}/mod_disk_cache.so
+#%attr(755,root,root) %{_libexecdir}/mod_cache_disk.so
#%attr(755,root,root) %{_libexecdir}/mod_mem_cache.so
%{_mandir}/man8/htcacheclean.8*
%attr(755,root,root) %{_libexecdir}/mod_vhost_alias.so
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_vhost_alias.conf
+%files mod_access_compat
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_access_compat.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_access_compat.conf
+
+%files mod_allowmethods
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_allowmethods.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_allowmethods.conf
+
+%files mod_auth_form
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_auth_form.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_auth_form.conf
+
+%files mod_authn_socache
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_authn_socache.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authn_socache.conf
+
+%files mod_authz_dbd
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_authz_dbd.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authz_dbd.conf
+
+%files mod_buffer
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_buffer.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_buffer.conf
+
+%files mod_cache_disk
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_cache_disk.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_cache_disk.conf
+
+%files mod_data
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_data.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_data.conf
+
+%files mod_dialup
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_dialup.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_dialup.conf
+
+%files mod_heartbeat
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_heartbeat.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_heartbeat.conf
+
+%files mod_heartmonitor
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_heartmonitor.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_heartmonitor.conf
+
+%files mod_lbmethod
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_lbmethod_bybusyness.so
+%attr(755,root,root) %{_libexecdir}/mod_lbmethod_byrequests.so
+%attr(755,root,root) %{_libexecdir}/mod_lbmethod_bytraffic.so
+%attr(755,root,root) %{_libexecdir}/mod_lbmethod_heartbeat.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_lbmethod.conf
+
+%files mod_log_debug
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_log_debug.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_log_debug.conf
+
+%files mod_ratelimit
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_ratelimit.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_ratelimit.conf
+
+%files mod_reflector
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_reflector.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_reflector.conf
+
+%files mod_remoteip
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_remoteip.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_remoteip.conf
+
+%files mod_request
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_request.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_request.conf
+
+%files mod_sed
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_sed.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_sed.conf
+
+%files mod_session
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_session.so
+%attr(755,root,root) %{_libexecdir}/mod_session_cookie.so
+%attr(755,root,root) %{_libexecdir}/mod_session_dbd.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_session.conf
+
+%files mod_slotmem
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_slotmem_plain.so
+%attr(755,root,root) %{_libexecdir}/mod_slotmem_shm.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_slotmem.conf
+
+%files mod_socache
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_socache_dbm.so
+%attr(755,root,root) %{_libexecdir}/mod_socache_shmcb.so
+%attr(755,root,root) %{_libexecdir}/mod_socache_memcache.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_socache.conf
+
+%files mod_unixd
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_unixd.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_unixd.conf
+
+%files mod_watchdog
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_watchdog.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_watchdog.conf
+
+%files mod_xml2enc
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_xml2enc.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_xml2enc.conf
+
%files -n htpasswd-%{name}
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/htpasswd