diff --git a/apache-20-22-upgrade b/apache-20-22-upgrade index f08db07..872d86d 100644 --- a/apache-20-22-upgrade +++ b/apache-20-22-upgrade @@ -75,6 +75,10 @@ if ! a2enmod -q authn_core; then a2enmod authn_core fi +if ! a2enmod -q authz_core; then + a2enmod authz_core +fi + if ! a2enmod -q log_config; then a2enmod log_config fi diff --git a/apache2-default-server.conf b/apache2-default-server.conf index eb12cad..261d5cc 100644 --- a/apache2-default-server.conf +++ b/apache2-default-server.conf @@ -99,7 +99,7 @@ ScriptAlias /cgi-bin/ "/srv/www/cgi-bin/" # You can comment this out here if you want those bits include only in a # certain virtual host, but not here. # -Include /etc/apache2/conf.d/*.conf +IncludeOptional /etc/apache2/conf.d/*.conf # The manual... if it is installed ('?' means it won't complain) IncludeOptional /etc/apache2/conf.d/apache2-manual?conf diff --git a/apache2.changes b/apache2.changes index ab7c99d..88494f8 100644 --- a/apache2.changes +++ b/apache2.changes @@ -1,3 +1,17 @@ +------------------------------------------------------------------- +Fri Aug 30 04:48:07 UTC 2013 - crrodriguez@opensuse.org + +- Really use %requires_ge for libapr1 and libapr-util1 + mentioned but not implemented in the previous commit. + +------------------------------------------------------------------- +Wed Aug 28 07:29:47 UTC 2013 - crrodriguez@opensuse.org + +- Use %requires_ge for libapr1 and libapr-util1 +- apache2-default-server.conf: Need to use IncludeOptional +- apache-20-22-upgrade: also load authz_core +- httpd-visibility.patch: Use compiler symbol visibility. + ------------------------------------------------------------------- Fri Aug 2 08:18:03 UTC 2013 - meissner@suse.com diff --git a/apache2.spec b/apache2.spec index 73263ca..52e136c 100644 --- a/apache2.spec +++ b/apache2.spec @@ -155,6 +155,7 @@ Patch70: apache2-implicit-pointer-decl.patch # PATCH-FEATURE-UPSTREAM httpd-2.4.3-mod_systemd.patch crrodriguez@opensuse.org simple module provides systemd integration. Patch109: httpd-2.4.3-mod_systemd.patch Patch110: http://people.apache.org/~minfrin/httpd-event-ssl.patch +Patch111: httpd-visibility.patch Url: http://httpd.apache.org/ Icon: Apache.xpm Summary: The Apache Web Server Version 2.2 @@ -170,11 +171,9 @@ Requires: %{pname}-MPM Requires: /etc/mime.types PreReq: %{name}-utils Requires: logrotate -# in the past, libapr1 >= 1.0 was sufficient. But since 2.2.16, a failure to -# create listen sockets can occur, unless newer libapr1 is used, with certain kernels. -# see https://bugzilla.redhat.com/show_bug.cgi?id=516331 -Requires: libapr1 < 2.0 -Requires: libapr1 >= 1.4.2 +#for some reason the parser barfs if not conditional +%{?requires_ge:%requires_ge libapr1} +%{?requires_ge:%requires_ge libapr-util1} %{?systemd_requires} PreReq: fileutils textutils grep sed %if %{?suse_version:1}0 @@ -379,8 +378,8 @@ to administrators of web servers in general. #%patch108 -p1 %patch109 -p1 %patch110 +%patch111 -p1 cat $RPM_SOURCE_DIR/SUSE-NOTICE >> NOTICE - # install READMEs a=$(basename %{S:22}) cp %{S:22} ./${a##%{name}-} @@ -502,7 +501,7 @@ for mpm in %{mpms_to_build}; do sed "s/%{vers}-$mpm//" include/ap_config_auto.h > include/ap_config_auto.h.new mv include/ap_config_auto.h.new include/ap_config_auto.h - make CFLAGS="$RPM_OPT_FLAGS -fPIC \ + make CFLAGS="$RPM_OPT_FLAGS -fvisibility=hidden -fPIC \ -Wall \ -DDEFAULT_PIDLOG='\"%{runtimedir}/%{httpd}.pid\"' \ -DDEFAULT_ERRORLOG='\"%{logfiledir}/error_log\"' " \ diff --git a/httpd-visibility.patch b/httpd-visibility.patch new file mode 100644 index 0000000..ece25b3 --- /dev/null +++ b/httpd-visibility.patch @@ -0,0 +1,260 @@ +--- httpd-2.4.6.orig/include/ap_config.h ++++ httpd-2.4.6/include/ap_config.h +@@ -64,7 +64,7 @@ + * AP_DECLARE(rettype) ap_func(args) + * @endcode + */ +-#define AP_DECLARE(type) type ++#define AP_DECLARE(type) __attribute__ ((visibility ("default"))) type + + /** + * Apache Core dso variable argument and hook functions are declared with +@@ -74,7 +74,7 @@ + * AP_DECLARE_NONSTD(rettype) ap_func(args [...]) + * @endcode + */ +-#define AP_DECLARE_NONSTD(type) type ++#define AP_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type + + /** + * Apache Core dso variables are declared with AP_MODULE_DECLARE_DATA. +@@ -86,7 +86,7 @@ + * AP_DECLARE_DATA type apr_variable + * @endcode + */ +-#define AP_DECLARE_DATA ++#define AP_DECLARE_DATA __attribute__ ((visibility ("default"))) + + #elif defined(AP_DECLARE_STATIC) + #define AP_DECLARE(type) type __stdcall +@@ -115,10 +115,10 @@ + #if defined(WIN32) + #define AP_MODULE_DECLARE(type) type __stdcall + #else +-#define AP_MODULE_DECLARE(type) type ++#define AP_MODULE_DECLARE(type) __attribute__ ((visibility ("default"))) type + #endif +-#define AP_MODULE_DECLARE_NONSTD(type) type +-#define AP_MODULE_DECLARE_DATA ++#define AP_MODULE_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define AP_MODULE_DECLARE_DATA __attribute__ ((visibility ("default"))) + #else + /** + * AP_MODULE_DECLARE_EXPORT is a no-op. Unless contradicted by the +--- httpd-2.4.6.orig/modules/cache/mod_cache.h ++++ httpd-2.4.6/modules/cache/mod_cache.h +@@ -37,9 +37,9 @@ + * CACHE_DECLARE_DATA with appropriate export and import tags for the platform + */ + #if !defined(WIN32) +-#define CACHE_DECLARE(type) type +-#define CACHE_DECLARE_NONSTD(type) type +-#define CACHE_DECLARE_DATA ++#define CACHE_DECLARE(type) __attribute__ ((visibility ("default"))) type ++#define CACHE_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define CACHE_DECLARE_DATA __attribute__ ((visibility ("default"))) + #elif defined(CACHE_DECLARE_STATIC) + #define CACHE_DECLARE(type) type __stdcall + #define CACHE_DECLARE_NONSTD(type) type +--- httpd-2.4.6.orig/modules/proxy/mod_proxy.h ++++ httpd-2.4.6/modules/proxy/mod_proxy.h +@@ -475,9 +475,9 @@ struct proxy_balancer_method { + * PROXY_DECLARE_DATA with appropriate export and import tags for the platform + */ + #if !defined(WIN32) +-#define PROXY_DECLARE(type) type +-#define PROXY_DECLARE_NONSTD(type) type +-#define PROXY_DECLARE_DATA ++#define PROXY_DECLARE(type) __attribute__ ((visibility ("default"))) type ++#define PROXY_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define PROXY_DECLARE_DATA __attribute__ ((visibility ("default"))) + #elif defined(PROXY_DECLARE_STATIC) + #define PROXY_DECLARE(type) type __stdcall + #define PROXY_DECLARE_NONSTD(type) type +--- httpd-2.4.6.orig/modules/lua/mod_lua.h ++++ httpd-2.4.6/modules/lua/mod_lua.h +@@ -58,9 +58,9 @@ + * AP_LUA_DECLARE_DATA with appropriate export and import tags for the platform + */ + #if !defined(WIN32) +-#define AP_LUA_DECLARE(type) type +-#define AP_LUA_DECLARE_NONSTD(type) type +-#define AP_LUA_DECLARE_DATA ++#define AP_LUA_DECLARE(type) __attribute__ ((visibility ("default"))) type ++#define AP_LUA_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define AP_LUA_DECLARE_DATA __attribute__ ((visibility ("default"))) + #elif defined(AP_LUA_DECLARE_STATIC) + #define AP_LUA_DECLARE(type) type __stdcall + #define AP_LUA_DECLARE_NONSTD(type) type +--- httpd-2.4.6.orig/modules/core/mod_watchdog.h ++++ httpd-2.4.6/modules/core/mod_watchdog.h +@@ -83,9 +83,9 @@ typedef struct ap_watchdog_t ap_watchdog + */ + #if !defined(AP_WD_DECLARE) + #if !defined(WIN32) +-#define AP_WD_DECLARE(type) type +-#define AP_WD_DECLARE_NONSTD(type) type +-#define AP_WD_DECLARE_DATA ++#define AP_WD_DECLARE(type) __attribute__ ((visibility ("default"))) type ++#define AP_WD_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define AP_WD_DECLARE_DATA __attribute__ ((visibility ("default"))) + #elif defined(AP_WD_DECLARE_STATIC) + #define AP_WD_DECLARE(type) type __stdcall + #define AP_WD_DECLARE_NONSTD(type) type +--- httpd-2.4.6.orig/modules/generators/mod_status.h ++++ httpd-2.4.6/modules/generators/mod_status.h +@@ -34,9 +34,9 @@ + #define AP_STATUS_EXTENDED (0x4) /* detailed report */ + + #if !defined(WIN32) +-#define STATUS_DECLARE(type) type +-#define STATUS_DECLARE_NONSTD(type) type +-#define STATUS_DECLARE_DATA ++#define STATUS_DECLARE(type) __attribute__ ((visibility ("default"))) type ++#define STATUS_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define STATUS_DECLARE_DATA __attribute__ ((visibility ("default"))) + #elif defined(STATUS_DECLARE_STATIC) + #define STATUS_DECLARE(type) type __stdcall + #define STATUS_DECLARE_NONSTD(type) type +--- httpd-2.4.6.orig/modules/dav/main/mod_dav.h ++++ httpd-2.4.6/modules/dav/main/mod_dav.h +@@ -82,9 +82,9 @@ extern "C" { + * DAV_DECLARE_DATA with appropriate export and import tags for the platform + */ + #if !defined(WIN32) +-#define DAV_DECLARE(type) type +-#define DAV_DECLARE_NONSTD(type) type +-#define DAV_DECLARE_DATA ++#define DAV_DECLARE(type) __attribute__ ((visibility ("default"))) type ++#define DAV_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define DAV_DECLARE_DATA __attribute__ ((visibility ("default"))) + #elif defined(DAV_DECLARE_STATIC) + #define DAV_DECLARE(type) type __stdcall + #define DAV_DECLARE_NONSTD(type) type +--- httpd-2.4.6.orig/modules/session/mod_session.h ++++ httpd-2.4.6/modules/session/mod_session.h +@@ -21,9 +21,9 @@ + * SESSION_DECLARE_DATA with appropriate export and import tags for the platform + */ + #if !defined(WIN32) +-#define SESSION_DECLARE(type) type +-#define SESSION_DECLARE_NONSTD(type) type +-#define SESSION_DECLARE_DATA ++#define SESSION_DECLARE(type) __attribute__ ((visibility ("default"))) type ++#define SESSION_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define SESSION_DECLARE_DATA __attribute__ ((visibility ("default"))) + #elif defined(SESSION_DECLARE_STATIC) + #define SESSION_DECLARE(type) type __stdcall + #define SESSION_DECLARE_NONSTD(type) type +--- httpd-2.4.6.orig/modules/database/mod_dbd.h ++++ httpd-2.4.6/modules/database/mod_dbd.h +@@ -35,9 +35,9 @@ + * DBD_DECLARE_DATA with appropriate export and import tags for the platform + */ + #if !defined(WIN32) +-#define DBD_DECLARE(type) type +-#define DBD_DECLARE_NONSTD(type) type +-#define DBD_DECLARE_DATA ++#define DBD_DECLARE(type) __attribute__ ((visibility ("default"))) type ++#define DBD_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define DBD_DECLARE_DATA __attribute__ ((visibility ("default"))) + #elif defined(DBD_DECLARE_STATIC) + #define DBD_DECLARE(type) type __stdcall + #define DBD_DECLARE_NONSTD(type) type +--- httpd-2.4.6.orig/modules/filters/mod_xml2enc.h ++++ httpd-2.4.6/modules/filters/mod_xml2enc.h +@@ -25,9 +25,9 @@ + + /* declarations to deal with WIN32 compile-flag-in-source-code crap */ + #if !defined(WIN32) +-#define XML2ENC_DECLARE(type) type +-#define XML2ENC_DECLARE_NONSTD(type) type +-#define XML2ENC_DECLARE_DATA ++#define XML2ENC_DECLARE(type) __attribute__ ((visibility ("default"))) type ++#define XML2ENC_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define XML2ENC_DECLARE_DATA __attribute__ ((visibility ("default"))) + #elif defined(XML2ENC_DECLARE_STATIC) + #define XML2ENC_DECLARE(type) type __stdcall + #define XML2ENC_DECLARE_NONSTD(type) type +--- httpd-2.4.6.orig/modules/filters/mod_ratelimit.h ++++ httpd-2.4.6/modules/filters/mod_ratelimit.h +@@ -21,9 +21,9 @@ + * AP_RL_DECLARE_DATA with appropriate export and import tags for the platform + */ + #if !defined(WIN32) +-#define AP_RL_DECLARE(type) type +-#define AP_RL_DECLARE_NONSTD(type) type +-#define AP_RL_DECLARE_DATA ++#define AP_RL_DECLARE(type) __attribute__ ((visibility ("default"))) type ++#define AP_RL_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define AP_RL_DECLARE_DATA __attribute__ ((visibility ("default"))) + #elif defined(AP_RL_DECLARE_STATIC) + #define AP_RL_DECLARE(type) type __stdcall + #define AP_RL_DECLARE_NONSTD(type) type +--- httpd-2.4.6.orig/modules/aaa/mod_authz_dbd.h ++++ httpd-2.4.6/modules/aaa/mod_authz_dbd.h +@@ -22,9 +22,9 @@ + * AUTHZ_DBD_DECLARE_DATA with appropriate export and import tags + */ + #if !defined(WIN32) +-#define AUTHZ_DBD_DECLARE(type) type +-#define AUTHZ_DBD_DECLARE_NONSTD(type) type +-#define AUTHZ_DBD_DECLARE_DATA ++#define AUTHZ_DBD_DECLARE(type) __attribute__ ((visibility ("default"))) type ++#define AUTHZ_DBD_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define AUTHZ_DBD_DECLARE_DATA __attribute__ ((visibility ("default"))) + #elif defined(AUTHZ_DBD_DECLARE_STATIC) + #define AUTHZ_DBD_DECLARE(type) type __stdcall + #define AUTHZ_DBD_DECLARE_NONSTD(type) type +--- httpd-2.4.6.orig/include/httpd.h ++++ httpd-2.4.6/include/httpd.h +@@ -341,7 +341,7 @@ extern "C" { + * by modules. Its purpose is to allow us to add attributes that + * particular platforms or compilers require to every exported function. + */ +-# define AP_DECLARE(type) type ++# define AP_DECLARE(type) __attribute__ ((visibility ("default"))) type + #endif + + #ifndef AP_DECLARE_NONSTD +@@ -352,20 +352,20 @@ extern "C" { + * which use varargs or are used via indirect function call. This + * is to accomodate the two calling conventions in windows dlls. + */ +-# define AP_DECLARE_NONSTD(type) type ++# define AP_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type + #endif + #ifndef AP_DECLARE_DATA +-# define AP_DECLARE_DATA ++# define AP_DECLARE_DATA __attribute__ ((visibility ("default"))) + #endif + + #ifndef AP_MODULE_DECLARE +-# define AP_MODULE_DECLARE(type) type ++# define AP_MODULE_DECLARE(type) __attribute__ ((visibility ("default"))) type + #endif + #ifndef AP_MODULE_DECLARE_NONSTD +-# define AP_MODULE_DECLARE_NONSTD(type) type ++# define AP_MODULE_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type + #endif + #ifndef AP_MODULE_DECLARE_DATA +-# define AP_MODULE_DECLARE_DATA ++# define AP_MODULE_DECLARE_DATA __attribute__ ((visibility ("default"))) + #endif + + /** +--- httpd-2.4.6.orig/include/util_ldap.h ++++ httpd-2.4.6/include/util_ldap.h +@@ -66,9 +66,9 @@ + * and import tags for the platform + */ + #if !defined(WIN32) +-#define LDAP_DECLARE(type) type +-#define LDAP_DECLARE_NONSTD(type) type +-#define LDAP_DECLARE_DATA ++#define LDAP_DECLARE(type) __attribute__ ((visibility ("default"))) type ++#define LDAP_DECLARE_NONSTD(type) __attribute__ ((visibility ("default"))) type ++#define LDAP_DECLARE_DATA __attribute__ ((visibility ("default"))) + #elif defined(LDAP_DECLARE_STATIC) + #define LDAP_DECLARE(type) type __stdcall + #define LDAP_DECLARE_NONSTD(type) type