pacho 15/06/07 19:15:21 Added: mod_mono-2.10-apache-2.4.patch Log: Support apache 2.4 (#532842) (Portage version: 2.2.20/cvs/Linux x86_64, signed Manifest commit with key A188FBD4)
Revision Changes Path 1.1 www-apache/mod_mono/files/mod_mono-2.10-apache-2.4.patch file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-apache/mod_mono/files/mod_mono-2.10-apache-2.4.patch?rev=1.1&view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-apache/mod_mono/files/mod_mono-2.10-apache-2.4.patch?rev=1.1&content-type=text/plain Index: mod_mono-2.10-apache-2.4.patch =================================================================== Sólo en mod_mono-2.10.new/: attachment.cgi?id=402888 diff -ur mod_mono-2.10/configure.in mod_mono-2.10.new/configure.in --- mod_mono-2.10/configure.in 2011-01-13 23:32:35.000000000 +0100 +++ mod_mono-2.10.new/configure.in 2015-06-07 21:09:26.417127319 +0200 @@ -336,6 +336,16 @@ ], [ ]) +AC_TRY_RUN([ + #include <ap_release.h> + int main () + { + return (AP_SERVER_MAJORVERSION_NUMBER == 2 && AP_SERVER_MINORVERSION_NUMBER == 4) ? 0 : 1; + } +], [ + APACHE_VER=2.4 +], [ +]) fi if test ! "$APACHE_VER" = "1.3" -a ! "$APACHE_VER" = "retry" ; then @@ -385,6 +395,10 @@ AC_DEFINE([APACHE22],,[Compiling for Apache >= 2.2 ]) fi +if test "$APACHE_VER" = "2.4" ; then + AC_DEFINE([APACHE24],,[Compiling for Apache >= 2.4 ]) +fi + # check for --with-mono-default-config-dir DFLT_MONO_CONFIG_DIR=`$APXS -q SYSCONFDIR`/mod-mono-applications AC_ARG_WITH(mono-default-config-dir, diff -ur mod_mono-2.10/src/mod_mono.c mod_mono-2.10.new/src/mod_mono.c --- mod_mono-2.10/src/mod_mono.c 2011-01-13 23:32:35.000000000 +0100 +++ mod_mono-2.10.new/src/mod_mono.c 2015-06-07 21:09:26.421127351 +0200 @@ -386,7 +386,11 @@ apache_get_userid () { #ifdef HAVE_UNIXD - return unixd_config.user_id; +#if defined(APACHE24) + return ap_unixd_config.user_id; +#else + return unixd_config.user_id; +#endif #else return ap_user_id; #endif @@ -396,7 +400,11 @@ apache_get_groupid () { #ifdef HAVE_UNIXD - return unixd_config.group_id; +#if defined(APACHE24) + return ap_unixd_config.user_id; +#else + return unixd_config.user_id; +#endif #else return ap_group_id; #endif @@ -406,7 +414,11 @@ apache_get_username () { #ifdef HAVE_UNIXD +#if defined(APACHE24) + return ap_unixd_config.user_name; +#else return unixd_config.user_name; +#endif #else return ap_user_name; #endif @@ -485,8 +497,12 @@ #if defined (AP_NEED_SET_MUTEX_PERMS) && defined (HAVE_UNIXD) DEBUG_PRINT (1, "Setting mutex permissions for %s", xsp->dashboard_lock_file); +#if defined(APACHE24) + rv = ap_unixd_set_global_mutex_perms (xsp->dashboard_mutex); +#else rv = unixd_set_global_mutex_perms (xsp->dashboard_mutex); - if (rv != APR_SUCCESS) { +#endif + if (rv != APR_SUCCESS) { ap_log_error (APLOG_MARK, APLOG_CRIT, STATCODE_AND_SERVER (rv), "Failed to set mutex permissions for %s", xsp->dashboard_lock_file); @@ -850,10 +866,14 @@ #if defined(APACHE22) return c->remote_addr->port; #else +#if defined(APACHE24) + return c->client_addr->port; +#else apr_port_t port; apr_sockaddr_port_get (&port, c->remote_addr); return port; #endif +#endif } @@ -863,10 +883,14 @@ #if defined(APACHE22) return r->connection->local_addr->port; #else +#if defined(APACHE24) + return r->connection->local_addr->port; +#else apr_port_t port; apr_sockaddr_port_get (&port, r->connection->local_addr); return port; #endif +#endif } static const char * @@ -1977,9 +2001,12 @@ size += info.local_ip_len + sizeof (int32_t); size += sizeof (int32_t); - - info.remote_ip_len = strlen (r->connection->remote_ip); - size += info.remote_ip_len + sizeof (int32_t); +#if defined(APACHE24) + info.remote_ip_len = strlen (r->connection->client_ip); +#else + info.remote_ip_len = strlen (r->connection->remote_ip); +#endif + size += info.remote_ip_len + sizeof (int32_t); size += sizeof (int32_t); @@ -2026,7 +2053,11 @@ i = LE_FROM_INT (i); memcpy (ptr, &i, sizeof (i)); ptr += sizeof (int32_t); +#if defined(APACHE24) + ptr += write_string_to_buffer (ptr, 0, r->connection->client_ip, info.remote_ip_len); +#else ptr += write_string_to_buffer (ptr, 0, r->connection->remote_ip, info.remote_ip_len); +#endif i = connection_get_remote_port (r->connection); i = LE_FROM_INT (i); memcpy (ptr, &i, sizeof (i)); Sólo en mod_mono-2.10.new/src: mod_mono.c.orig
